[go: up one dir, main page]

WO2020019237A1 - Systèmes et procédés de distribution de fournisseurs de services - Google Patents

Systèmes et procédés de distribution de fournisseurs de services Download PDF

Info

Publication number
WO2020019237A1
WO2020019237A1 PCT/CN2018/097205 CN2018097205W WO2020019237A1 WO 2020019237 A1 WO2020019237 A1 WO 2020019237A1 CN 2018097205 W CN2018097205 W CN 2018097205W WO 2020019237 A1 WO2020019237 A1 WO 2020019237A1
Authority
WO
WIPO (PCT)
Prior art keywords
sub
area
service providers
areas
historical
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/CN2018/097205
Other languages
English (en)
Inventor
Haibo Li
Hui QIU
Yuhao QIN
Menghua JIANG
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to PCT/CN2018/097205 priority Critical patent/WO2020019237A1/fr
Priority to CN201880090487.3A priority patent/CN111801701B/zh
Publication of WO2020019237A1 publication Critical patent/WO2020019237A1/fr
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/08Logistics, e.g. warehousing, loading or distribution; Inventory or stock management
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

  • the present disclosure generally relates to online to offline (O2O) service platforms, and in specifically, to systems and methods for dispatching available service providers in the O2O service platforms.
  • O2O services such as online taxi hailing services and delivery services
  • different areas may be different in their service demand and service supply.
  • a surplus service supply if the number of available service providers is greater than the number of service requesters, which may result in a waste of service resources in the area.
  • an insufficient service supply if the number of service requesters is larger than the number of available service providers, which may cause a long wait for the available services providers.
  • a system for dispatching available service providers in an O2O service platform may include at least one non-transitory computer-readable storage medium including a set of instructions and at least one processor in communication with the at least one non-transitory computer-readable storage medium.
  • the at least one processor may be configured to direct the system to segment an area into a plurality of sub-areas.
  • the plurality of sub-areas may form at least one pair of sub-areas including a first sub-area and a second sub-area.
  • the at least one processor may be further configured to direct the system to determine, for each of the first sub-area and the second sub-area, a demand-supply gap of the sub-area in a predetermined time period.
  • the at least one processor may be further configured to direct the system to determine a dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the at least one processor may be further configured to direct the system to determine a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period based on the demand-supply gap of the first sub-area in the predetermined time period, the demand-supply gap of the second sub-area in the predetermined time period, and the dispatch cost.
  • the at least one pair of sub-areas may be a plurality of pairs of sub-areas.
  • the at least one processor may be further configured to direct the system to determine, for each pair of the plurality of pairs of sub-areas, a dispatch utility of dispatching available service providers from the second sub-area of the pair to the first sub-area of the pair in the predetermined time period.
  • the at least one processor may be further configured to direct the system to rank the dispatch utility of the plurality of pairs of sub-areas.
  • the at least one processor may be further directed to determine a strategy for dispatching available service providers between the plurality of sub-areas based on the ranking result of the dispatch utility.
  • the at least one processor may be further configured to direct the system to obtain a plurality of first sets of data related to the sub-area.
  • Each of the plurality of first sets of data may correspond to a first historical time slice and at least include a historical number of service orders initiated in the sub-area in the corresponding first historical time slice.
  • the at least one processor may be further configured to direct the system to predict a number of service orders initiated in the sub-area in the predetermined time period by inputting the plurality of first sets of data related to the sub-area into a service demand prediction model.
  • the at least one processor may be further configured to direct the system to obtain a plurality of second sets of data related to the sub-area.
  • Each of the plurality of second sets of data may correspond to a second historical time slice and at least include a historical number of available service providers in the sub-area in the corresponding second historical time slice.
  • the at least one processor may be further configured to direct the system to predict the number of available service providers in the sub-area in the predetermined time period by inputting the plurality of second sets of data related to the sub-area into a service supply prediction model.
  • the at least one processor may be further configured to direct the system to determine the demand-supply gap of the sub-area in the predetermined time period based on the number of service orders initiated in the sub-area in the predetermined time period and the number of available service providers in the sub-area in the predetermined time period.
  • the at least one processor may be further configured to direct the system to, for each of the plurality of second sets of data related to the sub-area, obtain a first number of available service providers entering the sub-area in the corresponding second historical time slice.
  • the at least one processor may be further directed to obtain a second number of available service providers leaving the sub-area in the corresponding second historical time slice.
  • the at least one processor may be further directed to determine the historical number of available service providers of the sub-area in the corresponding second historical time slice based on the first number and the second number.
  • each of the plurality of first sets of data related to the sub-area may further include at least one of information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information of the sub-area in the corresponding first historical time slice, weather information related to the sub-area in the corresponding first historical time slice, news information related to the sub-area in the corresponding first historical time slice, policy information related to the sub-area in the corresponding first historical time slice, or date information related to the corresponding first historical time slice.
  • each of the plurality of second sets of data related to the sub-area may further include at least one of information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information of the sub-area in the corresponding second historical time slice, weather information related to the sub-area in the corresponding second historical time slice, news information related to the sub-area in the corresponding second historical time slice, policy information related to the sub-area in the corresponding second historical time slice, date information related to the corresponding second historical time slice, a first number of available service providers entering the sub-area in the corresponding second historical time slice, or a second number of available service providers leaving the sub-area in the corresponding second historical time slice.
  • the at least one processor may be further configured to direct the system to obtain a plurality of first sample sets of data related to a plurality of sample sub-areas.
  • Each of the plurality of first sample sets of data may correspond to a sample historical time slice and at least include a historical number of service orders initiated in each of the plurality of sample sub-areas in the corresponding sample historical time slice.
  • the at least one processor may be further configured to direct the system to obtain a preliminary model.
  • the at least one processor may be further configured to direct the system to generate the service demand prediction model by training the preliminary model using the plurality of first sample sets of data related to the plurality of sample sub-areas.
  • the at least one processor may be further configured to direct the system to obtain a plurality of second sample sets of data related to a plurality of sample sub-areas.
  • Each of the plurality of second sample sets of data may correspond to a sample historical time slice and at least include a historical number of available service providers in each of the plurality of sample sub-areas in the corresponding sample historical time slice.
  • the at least one processor may be further configured to direct the system to obtain a preliminary model.
  • the at least one processor may be further configured to direct the system to generate the service supply prediction model by training the preliminary model using the plurality of second sample sets of data related to the plurality of sample sub-areas.
  • At least one of the service demand prediction model or the service supply prediction model may be a recurrent neural network (RNN) model.
  • RNN recurrent neural network
  • the plurality of first historical time slices and the plurality of second historical time slices may be within 1 hour to 72 hours before the predetermined time period.
  • the at least one processor may be further configured to direct the system to determine a route from the second sub-area to the first sub-area.
  • the at least one processor may be further configured to direct the system to obtain road condition information related to the route.
  • the at least one processor may be further configured to direct the system to determine the dispatch cost of dispatching available service providers from the second sub-area to the first sub-area based on the road condition information related to the route.
  • the road condition information related to the route may include at least one of a distance of the route, an estimated travelling time along the route, or a traffic condition along the route.
  • the determining the dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period may be performed according to an Equation as below:
  • G [1] refers to the demand-supply gap of the first sub-area in the predetermined time period
  • G [2] refers to the demand-supply gap of the second sub-area in the predetermined time period
  • eta (1, 2) refers to the estimated travelling time along the route
  • refers to a penalty coefficient related to the traffic condition along the route, and represents the dispatch cost of dispatching available service providers from the second sub-area to the first sub-area.
  • the road condition related to the route may include the traffic condition along the route.
  • the at least one processor may be further configured to direct the system to segment the route into a plurality of road segments.
  • the at least one processor may be further configured to direct the system to determine, for each of the plurality of road segments, a travel speed of one or more service providers passing through the road segment.
  • the at least one processor may be further configured to direct the system to determine the traffic condition of the route based on the travel speeds corresponding to the plurality of road segments.
  • the determining a travel speed of one or more service providers passing through the road segment may be performed according to an Equation as below:
  • i refers to the i th road segment of the plurality of road segments
  • Vi refers to the travel speed of one or more service providers passing through the i th road segment
  • J refers to a number of service providers passing through the i th road segment
  • j refers to the j th service provider among the service providers passing through the i th road segment
  • Traj j, i refers to a travelling trajectory of the j th service provider on the i th road segment
  • Length (Traj j, i ) refers to a length of the Traj j, i
  • Time (Traj j, i ) refers to a travel time corresponding to the Traj j, i
  • W j refers to a weight regarding the Traj j, i .
  • a method for dispatching available service providers in an O2O service platform may include segmenting an area into a plurality of sub-areas.
  • the plurality of sub-areas may form at least one pair of sub-areas including a first sub-area and a second sub-area.
  • the method may also include determining, for each of the first sub-area and the second sub-area, a demand-supply gap of the sub-area in a predetermined time period.
  • the method may further include determining a dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the method may further include determining a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period based on the demand-supply gap of the first sub-area in the predetermined time period, the demand-supply gap of the second sub-area in the predetermined time period, and the dispatch cost.
  • a non-transitory computer-readable storage medium embodying a computer program product comprising instructions may be configured to cause a computing device to segment an area into a plurality of sub-areas.
  • the plurality of sub- areas may form at least one pair of sub-areas including a first sub-area and a second sub-area.
  • the computer program product comprising instructions may also be configured to cause the computing device to determine, for each of the first sub-area and the second sub-area, a demand-supply gap of the sub-area in a predetermined time period.
  • the computer program product comprising instructions may further be configured to cause the computing device determine a dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the computer program product comprising instructions may further be configured to cause the computing device determine a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period based on the demand-supply gap of the first sub-area in the predetermined time period, the demand-supply gap of the second sub-area in the predetermined time period, and the dispatch cost.
  • FIG. 1 is a schematic diagram illustrating an exemplary O2O service system according to some embodiments of the present disclosure
  • FIG. 2 is a schematic diagram illustrating exemplary hardware and software components of a computing device according to some embodiments of the present disclosure
  • FIG. 3 is a schematic diagram illustrating exemplary hardware and/or software components of a mobile device on which a terminal may be implemented according to some embodiments of the present disclosure
  • FIGs. 4A and 4B are block diagrams illustrating exemplary processing engines 112A and 112B according to some embodiments of the present disclosure
  • FIG. 5 is a flowchart illustrating an exemplary process for determining a dispatch utility of dispatching available service providers from a second sub-area to a first sub-area according to some embodiments of the present disclosure
  • FIG. 6 is a flowchart illustrating an exemplary process for determining a strategy for dispatching available service providers in an area according to some embodiments of the present disclosure
  • FIG. 7 is a flowchart illustrating an exemplary process for determining a demand-supply gap of a sub-area in a predetermined time period according to some embodiments of the present disclosure
  • FIG. 8 is a flowchart illustrating an exemplary process for generating a service demand prediction model according to some embodiments of the present disclosure
  • FIG. 9 is a flowchart illustrating an exemplary process for generating a service supply prediction model according to some embodiments of the present disclosure.
  • FIG. 10 is a flowchart illustrating an exemplary process for determining a dispatching cost of dispatching available service providers from a second sub-area to a first sub-area according to some embodiments of the present disclosure.
  • system, ” “engine, ” “unit, ” “module, ” and/or “block” used herein are one method to distinguish different components, elements, parts, section or assembly of different level in ascending order. However, the terms may be displaced by another expression if they achieve the same purpose.
  • module, ” “unit, ” or “block, ” as used herein refers to logic embodied in hardware or firmware, or to a collection of software instructions.
  • a module, a unit, or a block described herein may be implemented as software and/or hardware and may be stored in any type of non-transitory computer-readable medium or other storage device.
  • a software module/unit/block may be compiled and linked into an executable program. It will be appreciated that software modules can be callable from other modules/units/blocks or from themselves, and/or may be invoked in response to detected events or interrupts.
  • Software modules/units/blocks configured for execution on computing devices may be provided on a computer-readable medium, such as a compact disc, a digital video disc, a flash drive, a magnetic disc, or any other tangible medium, or as a digital download (and can be originally stored in a compressed or installable format that needs installation, decompression, or decryption prior to execution) .
  • a computer-readable medium such as a compact disc, a digital video disc, a flash drive, a magnetic disc, or any other tangible medium, or as a digital download (and can be originally stored in a compressed or installable format that needs installation, decompression, or decryption prior to execution) .
  • Such software code may be stored, partially or fully, on a storage device of the executing computing device, for execution by the computing device.
  • Software instructions may be embedded in a firmware, such as an erasable programmable read-only memory (EPROM) .
  • EPROM erasable programmable read-only memory
  • modules/units/blocks may be included in connected logic components, such as gates and flip-flops, and/or can be included of programmable units, such as programmable gate arrays or processors.
  • the modules/units/blocks or computing device functionality described herein may be implemented as software modules/units/blocks, but may be represented in hardware or firmware.
  • the modules/units/blocks described herein refer to logical modules/units/blocks that may be combined with other modules/units/blocks or divided into sub-modules/sub-units/sub-blocks despite their physical organization or storage. The description may be applicable to a system, an engine, or a portion thereof.
  • 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.
  • Embodiments of the present disclosure may be applied to different transportation systems including but not limited to land transportation, sea transportation, air transportation, space transportation, or the like, or any combination thereof.
  • a vehicle of the transportation systems may include a rickshaw, travel tool, taxi, chauffeured car, hitch, bus, rail transportation (e.g., a train, a bullet train, high-speed rail, and subway) , ship, airplane, spaceship, hot-air balloon, driverless vehicle, or the like, or any combination thereof.
  • the transportation system may also include any transportation system that applies management and/or distribution, for example, a system for sending and/or receiving an express.
  • the application scenarios of different embodiments of the present disclosure may include but not limited to one or more webpages, browser plugins and/or extensions, client terminals, custom systems, intracompany analysis systems, artificial intelligence robots, or the like, or any combination thereof. It should be understood that application scenarios of the system and method disclosed herein are only some examples or embodiments. Those having ordinary skills in the art, without further creative efforts, may apply these drawings to other application scenarios. For example, other similar server.
  • passenger, ” “requester, ” “requestor, ” “service requester, ” “service requestor” 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, ” “service provider, ” and “supplier” 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.
  • user in the present disclosure may refer to an individual, an entity or a tool that may request a service, order a service, provide a service, or facilitate the providing of the service.
  • the user may be a requester, a passenger, a driver, an operator, or the like, or any combination thereof.
  • requester and “requester terminal” may be used interchangeably, and “provider” and “provider terminal” may be used interchangeably.
  • the term “request, ” “service, ” “service request, ” and “order” in the present disclosure are used interchangeably to refer to a request that may be initiated by a passenger, a requester, a service requester, a customer, a driver, a provider, a service provider, a supplier, or the like, or any combination thereof.
  • the service request may be accepted by any one of a passenger, a requester, a service requester, a customer, a driver, a provider, a service provider, or a supplier.
  • the service request may be chargeable or free.
  • the present disclosure provides systems and methods for dispatching available service providers an area in an O2O service platform.
  • the systems and methods may segment the area into a plurality of sub-areas.
  • the sub-areas may form at least one pair of sub-areas including a first sub-area and a second sub-area.
  • the systems and methods may determine, for each of the first sub-area and the second sub-area, a demand-supply gap of the sub-area in a predetermined time period.
  • the systems and methods may also determine a dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the dispatch cost may be related to a route between the first and second sub-areas.
  • the dispatch cost may increase with the distance of the route, the estimated travelling time along the route, or the congestion of the route, or the like, or any combination thereof.
  • the systems and methods may determine a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area.
  • the dispatch utility which takes both the dispatch cost and the supply/demand conditions of the first and second sub-areas into consideration, may serve as a basis to determine a dispatch strategy of available service providers among the sub-areas of the area. As such, the resource utilization, the service efficiency, and user experience in the area may be improved.
  • FIG. 1 is a block diagram illustrating an exemplary O2O service system 100 according to some embodiments of the present disclosure.
  • the O2O service system 100 may be an online transportation service platform for transportation services.
  • the O2O service system 100 may include a server 110, a network 120, a requester terminal 130, a provider terminal 140, a vehicle 150, a storage device 160, and a navigation system 170.
  • the O2O service system 100 may provide a plurality of services.
  • Exemplary service may include a taxi-hailing service, a chauffeur service, an express car service, a carpool service, a bus service, a driver hire service, and a shuttle service.
  • the O2O service may be any online service, such as booking a meal, shopping, or the like, or any combination thereof.
  • 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 local or remote.
  • the server 110 may access information and/or data stored in the requester terminal 130, the provider terminal 140, and/or the storage device 160 via the network 120.
  • the server 110 may be directly connected to the requester terminal 130, the provider terminal 140, and/or the storage device 160 to access stored information and/or data.
  • 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 engine 112.
  • the processing engine 112 may process information and/or data related to the O2O service system 100 to perform one or more functions described in the present disclosure. For example, the processing engine 112 may analyze information related to a plurality of sub-areas of an area to determine a dispatch strategy for dispatching available service providers among the plurality of sub-areas.
  • the processing engine 112 may include one or more processing engines (e.g., single-core processing engine (s) or multi-core processor (s) ) .
  • the processing engine 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 a microcontroller unit, a reduced instruction-set computer (RISC) , a microprocessor, or the like, or any combination thereof.
  • RISC reduced
  • the network 120 may facilitate exchange of information and/or data.
  • one or more components of the O2O service system 100 e.g., the server 110, the requester terminal 130, the provider terminal 140, the vehicle 150, the storage device 160, and the navigation system 170
  • the server 110 may receive a service request from the requester terminal 130 via the network 120.
  • the network 120 may be any type of wired or wireless network, or combination thereof.
  • the network 120 may include a cable network, a wireline network, an optical fiber network, a telecommunications 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 network, a ZigBee network, a near field communication (NFC) network, or the like, or any combination thereof.
  • the network 120 may include one or more network access points.
  • the network 120 may include wired or wireless network access points such as base stations and/or internet exchange points 120-1, 120-2, through which one or more components of the O2O service system 100 may be connected to the network 120 to exchange data and/or information.
  • a passenger may be an owner of the requester terminal 130. In some embodiments, the owner of the requester terminal 130 may be someone other than the passenger. For example, an owner A of the requester terminal 130 may use the requester terminal 130 to transmit a service request for a passenger B or receive a service confirmation and/or information or instructions from the server 110.
  • 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 a service request for a service provider D, and/or information or instructions from the server 110.
  • passenger and “passenger terminal” may be used interchangeably, and “service provider” and “provider terminal” may be used interchangeably.
  • the provider terminal may be associated with one or more service providers (e.g., a night-shift service provider, or a day-shift service provider) .
  • 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 vehicle 130-4, a wearable device 130-5, or the like, or any combination thereof.
  • the mobile device 130-1 may include a smart home 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 smart mobile device may include a smartphone, a personal digital assistant (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, virtual reality glasses, 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 Google TM Glasses, 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 requester terminal 130.
  • the wearable device 130-5 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 provider terminal 140 may include a plurality of provider terminals 140-1, 140-2, ..., 140-n. In some embodiments, the provider terminal 140 may be similar to, or the same device as the requester terminal 130. In some embodiments, the provider terminal 140 may be customized to be able to implement the O2O service system 100. In some embodiments, the provider terminal 140 may be a device with positioning technology for locating the service provider, the provider terminal 140, and/or a vehicle 150 associated with the provider terminal 140. In some embodiments, the requester terminal 130 and/or the provider terminal 140 may communicate with another positioning device to determine the position of the passenger, the requester terminal 130, the service provider, and/or the provider terminal 140.
  • the requester terminal 130 and/or the provider terminal 140 may periodically transmit the positioning information to the server 110.
  • the provider terminal 140 may also periodically transmit the availability status to the server 110.
  • the availability status may indicate whether a vehicle 150 associated with the provider terminal 140 is available to carry a passenger.
  • the requester terminal 130 and/or the provider terminal 140 may transmit the positioning information and the availability status to the server 110 every thirty minutes.
  • the requester terminal 130 and/or the provider terminal 140 may transmit the positioning information and the availability status to the server 110 each time the user logs into the mobile application associated with the O2O service system 100.
  • the provider terminal 140 may correspond to one or more vehicles 150.
  • the vehicles 150 may carry the passenger and travel to the destination.
  • the vehicles 150 may include a plurality of vehicles 150-1, 150-2, ..., 150-n.
  • 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) .
  • the storage device 160 may store data and/or instructions. In some embodiments, the storage device 160 may store data obtained from the requester terminal 130 and/or the provider terminal 140. In some embodiments, the storage device 160 may store data and/or instructions that the server 110 may execute or use to perform exemplary methods described in the present disclosure. In some embodiments, storage device 160 may include a mass storage device, a removable storage device, a volatile read-and-write memory, a read-only memory (ROM) , or the like, or any combination thereof. Exemplary mass storage devices may include a magnetic disk, an optical disk, a solid-state drive, etc. Exemplary removable storage devices 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) .
  • 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 (EPROM) , an electrically-erasable programmable ROM (EEPROM) , a compact disk ROM (CD-ROM) , and a digital versatile disk ROM, etc.
  • MROM mask ROM
  • PROM programmable ROM
  • EPROM erasable programmable ROM
  • EEPROM electrically-erasable programmable ROM
  • CD-ROM compact disk ROM
  • digital versatile disk ROM etc.
  • the storage device 160 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 160 may be connected to the network 120 to communicate with one or more components of the O2O service system 100 (e.g., the server 110, the requester terminal 130, or the provider terminal 140) .
  • One or more components of the O2O service system 100 may access the data or instructions stored in the storage device 160 via the network 120.
  • the storage device 160 may be directly connected to or communicate with one or more components of the O2O service system 100 (e.g., the server 110, the requester terminal 130, the provider terminal 140) .
  • the storage device 160 may be part of the server 110.
  • the navigation system 170 may determine information associated with an object, for example, one or more of the requester terminal 130, the provider terminal 140, the vehicle 150, etc.
  • the navigation system 170 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 navigation system 170 may include one or more satellites, for example, a satellite 170-1, a satellite 170-2, and a satellite 170-3.
  • the satellites 170-1 through 170-3 may determine the information mentioned above independently or jointly.
  • the satellite navigation system 170 may transmit the information mentioned above to the network 120, the requester terminal 130, the provider terminal 140, or the vehicle 150 via wireless connections.
  • one or more components of the O2O service system 100 may have permissions to access the storage device 160.
  • one or more components of the O2O service system 100 may read and/or modify information related to the passenger, service provider, and/or the public when one or more conditions are met.
  • the server 110 may read and/or modify one or more passengers’information after a service is completed.
  • the server 110 may read and/or modify one or more service providers’information after a service is completed.
  • an element or component of the O2O service system 100 performs, the element may perform through electrical signals and/or electromagnetic signals.
  • a processor of the requester terminal 130 may generate an electrical signal encoding the request.
  • the processor of the requester terminal 130 may then transmit the electrical signal to an output port. If the requester terminal 130 communicates with the server 110 via a wired network, the output port may be physically connected to a cable, which further may transmit the electrical signal to an input port of the server 110.
  • the output port of the requester terminal 130 may be one or more antennas, which convert the electrical signal to electromagnetic signal.
  • a provider terminal 130 may receive an instruction and/or service request from the server 110 via electrical signal or electromagnet signals.
  • an electronic device such as the requester terminal 130, the provider terminal 140, and/or the server 110, when a processor thereof processes an instruction, transmits out an instruction, and/or performs an action, the instruction and/or action is conducted via electrical signals.
  • the processor retrieves or saves data from a storage medium, it may transmit out electrical signals to a read/write device of the storage medium, which may read or write structured data in the storage medium.
  • the structured data may be transmitted to the processor in the form of electrical signals via a bus of the electronic device.
  • an electrical signal may refer to one electrical signal, a series of electrical signals, and/or a plurality of discrete electrical signals.
  • FIG. 2 illustrates a schematic diagram of an exemplary computing device 200 according to some embodiments of the present disclosure.
  • the computing device 200 may be a computer, such as the server 110 in FIG. 1 and/or a computer with specific functions, configured to implement any particular system according to some embodiments of the present disclosure.
  • the computing device 200 may be configured to implement any component that performs one or more functions disclosed in the present disclosure.
  • the server 110 e.g., the processing engine 112
  • FIG. 2 depicts only one computing device.
  • the functions of the computing device may be implemented by a group of similar platforms in a distributed mode to disperse the processing load of the system.
  • the computing device 200 may include a communication terminal 250 that may connect with a network that may implement the data communication.
  • the computing device 200 may also include a processor 220 that is configured to execute instructions and includes one or more processors.
  • the schematic computer platform may include an internal communication bus 210, different types of program storage units and data storage units (e.g., a hard disk 270, a read-only memory (ROM) 230, a random-access memory (RAM) 240) , various data files applicable to computer processing and/or communication, and some program instructions executed possibly by the processor 220.
  • the computing device 200 may also include an I/O device 260 that may support the input and output of data flows between the computing device 200 and other components. Moreover, the computing device 200 may receive programs and data via the communication network.
  • FIG. 3 is a schematic diagram illustrating exemplary hardware and/or software components of an exemplary mobile device on which a terminal (e.g., a requester terminal 130 and/or a provider terminal 140) may be implemented according to some embodiments of the present disclosure.
  • the mobile device 300 may include, a communication platform 310, a display 320, a graphics processing unit (GPU) 330, a central processing unit (CPU) 340, an I/O 350, a memory 360, a mobile operating system (OS) 370, application (s) , and a storage 390.
  • 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.
  • the 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 image processing or other information from the O2O service system 100.
  • User interactions with the information stream may be achieved via the I/O 350 and provided to the storage device 160, the server 110 and/or other components of the O2O service system 100.
  • the mobile device 300 may be an exemplary embodiment corresponding to the requester terminal 130 or the provider terminal 140.
  • computer hardware platforms may be used as the hardware platform (s) for one or more of the elements described herein.
  • a computer with user interface elements may be used to implement a personal computer (PC) or any other type of work station or terminal device.
  • PC personal computer
  • a computer may also act as a system if appropriately programmed.
  • FIGs. 4A and 4B are block diagrams illustrating exemplary processing engines 112A and 112B according to some embodiments of the present disclosure.
  • the processing engines 112A and 112B may be embodiments of the processing engine 112 as described in connection with FIG. 1.
  • the processing engine 112A may be configured to analyze the service demand and/or supply in a plurality of sub-areas of an area, and optionally determine a dispatch strategy of available service providers among the sub-areas.
  • the processing engine 112B may be configured to generate a service demand prediction model and/or a service supply prediction model.
  • the processing engines 112A and 112B may respectively be implemented on a computing device 200 (e.g., the processor 220) illustrated in FIG. 2 or a CPU 340 as illustrated in FIG. 3.
  • the processing engine 112A may be implemented on a CPU 340 of a mobile device and the processing engine 112B may be implemented on a computing device 200.
  • the processing engines 112A and 112B may be implemented on the same computing device 200 or the same CPU 340.
  • the processing engine 112A may include a segmentation module 401 and a determination module 402.
  • the segmentation module 401 may be configured to segment an area into a plurality of sub-areas.
  • the plurality of sub-areas may form at least one pair of sub-areas, the at least one pair of sub-areas including a first sub-area and a second sub-area.
  • the segmentation module 401 may segment the area according to one or more parameters, such as a size of area, a density of population, a division of administrative area, a density of office buildings, a density of residential buildings, or the like, or any combination thereof.
  • the segmentation module 401 may segment the area into a plurality of unit areas, and then generate the sub-areas by clustering the unit areas. More descriptions regarding the segmentation of the area may be found elsewhere in the present disclosure. See, e.g., operation 510 in FIG. 5 and the relevant descriptions thereof.
  • the determination module 402 may be configured to determine, for each of the first sub-area and the second sub-area, a demand-supply gap of the sub-area in a predetermined time. In some embodiments, the determination module 402 may predict a service demand and a service supply for the sub-area based on a service demand prediction model and a service supply prediction model, respectively. Further, the determination module 402 may determine the demand-supply gap based on the predicted service demand and the predicted service demand. More descriptions regarding the determination of the demand-supply gap may be found elsewhere in the present disclosure. See, e.g., operation 520 in FIG. 5 and the relevant descriptions thereof.
  • the determination module 402 may also be configured to determine a dispatch cost of dispatching service providers in the second sub-area to the first sub-area in the predetermined time period. In some embodiments, the determination module 402 may determine the dispatch cost based on a route from the second sub-area to the first sub-area. More descriptions regarding the determination of the dispatch cost may be found elsewhere in the present disclosure. See, e.g., operation 530 and process 1000 and the relevant descriptions thereof.
  • the determination module 402 may further be configured to determine a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the dispatch utility may be used to measure the worth (or value) of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period. More descriptions regarding the determination of the dispatch utility may be found elsewhere in the present disclosure. See, e.g., operation 540 in FIG. 5 and the relevant descriptions thereof.
  • the determination module 402 may be configured to determine a strategy for dispatching available service providers among the plurality of sub-areas in the area. More descriptions regarding the determination of the dispatch strategy may be found elsewhere in the present disclosure. See, e.g., FIG. 8 and the relevant descriptions thereof.
  • the processing engine 112B may include an obtaining module 403 and a training module 404.
  • the obtaining module 403 may be configured obtain information used to generate the service demand prediction model and/or the service supply prediction model.
  • the obtaining module 403 may obtain a plurality of first sets of data and a plurality of second sets of data related to the sub-area.
  • Each first set of data may correspond to a first historical time slice and at least include a historical number of service orders initiated in the sub-area in the corresponding first historical time slice.
  • Each second set of data may correspond to a second historical time slice and at least include a historical number of available service providers in the sub-area in the corresponding second historical time slice. Details regarding the obtaining of the information used to generate the service demand prediction model and/or the service supply prediction model may be found elsewhere in the present disclosure. See, e.g., operations 810 and 910 and the relevant descriptions thereof.
  • the training module 404 may be configured to train a model.
  • the training module 404 may generate the service demand prediction model by training a preliminary model using the plurality of first sets of data.
  • the training module 405 may generate the service supply prediction model by training a preliminary model using the plurality of second sets of data. Details regarding the generation of the service demand prediction model and the service supply prediction model may be found elsewhere in the present disclosure. See, e.g., operations 830 and 930 and the relevant descriptions thereof.
  • any module mentioned above may be implemented in two or more separate units.
  • the functions of determination module 402 may be implemented in two separate units, one of which is configured to determine the demand-supply gap of the first and the second sub-area, and the other is configured to determine the dispatch cost of dispatching available service providers from the second sub-area to the first sub-area.
  • the processing engine 112A and/or the processing engine 112B may further include one or more additional modules (e.g., a storage module) . Additionally or alternatively, one or more modules mentioned above may be omitted. In some embodiments, the processing engines 112A and 112B may be integrated as one processing engine.
  • FIG. 5 is a flowchart illustrating an exemplary process for determining a dispatch utility of dispatching available service providers from a second sub-area to a first sub-area according to some embodiments of the present disclosure. At least a portion of process 500 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 500 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 500 may be stored in a storage device (e.g., the storage device 160, the ROM 230, the RAM 240, the storage 390) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing engine 112 in the server 110, or the processor 220 of the computing device 200) or the CPU 340 of the mobile device 300.
  • the instructions may be transmitted in a form of electronic current or electrical signals.
  • the processing engine 112A may segment an area into a plurality of sub-areas.
  • the area segmented by the segmentation module 401 may be an administrative area (e.g. country, province, city or district) , a geographic area (e.g. Qinghai-Tibet Plateau, North China Plain, Sichuan Basin) , an economic area (e.g. Yangtze River Delta economic area, Pearl River Delta economic area, Beijing-Tianjin economic area) , or the like, or any combination thereof.
  • the segmentation module 401 may segment the area according to one or more parameters, such as a size of area, a density of population, a division of administrative area, a density of office buildings, a density of residential buildings, or the like, or any combination thereof. In some embodiments, the segmentation module 401 may evenly divide the area into the sub-areas according to the parameter (s) . For example, the segmentation module 401 may segment the area into sub-areas with the same size in term of the parameter (s) . As another example, the segmentation module 401 may segment the area into sub-areas each of which has similar density of office buildings or population.
  • parameters such as a size of area, a density of population, a division of administrative area, a density of office buildings, a density of residential buildings, or the like, or any combination thereof. In some embodiments, the segmentation module 401 may evenly divide the area into the sub-areas according to the parameter (s) . For example, the segmentation module 401 may segment the area into sub-areas with the same
  • the segmentation module 401 may segment the area into sub-areas having the same shape, such as a triangle, a rectangle, a diamond, a hexagon, or the like, or any combination thereof.
  • the segmentation module 401 may segment the area into a plurality of hexagonal sub-areas each of which has a predetermined length of sides (e.g. 100 meters, 200 meters, 300 meters, or 400 meters) . In some embodiments, there may be no gap between two adjacent sub-areas.
  • the segmentation module 401 may segment the area into a plurality of unit areas, and then generate the sub-areas by clustering the unit areas.
  • the unit areas may have the same size and the same shape with each other.
  • the clustering of the unit areas may be performed in any suitable manner.
  • the clustering of the unit areas may be performed based on the location information of the unit areas and the number of historical service orders initiated (or completed) in each of the unit areas. For example, the segmentation module 401 may cluster a plurality of adjacent unit areas into a sub-area if the total number of historical service orders initiated (or completed) in the adjacent unit areas during a preset historical time period is smaller than a threshold.
  • the plurality of sub-areas may form one or more pairs of sub-areas.
  • Each pair of sub-areas may include a first sub-area and a second sub-area.
  • a pair of a first sub-area and a second sub-area may be regarded as being different from a pair of the second sub-area and the first sub-area, considering that the dispatch utility for dispatching available service providers from the first sub-area to the second sub-area may be different from the dispatch utility for dispatching available service providers from the second sub-area to the first sub-area.
  • the pair of the first sub-area and the second sub-area may be regarded as being the same as the pair of the second sub-area and the first sub-area.
  • the present invention assumes that the pair of the first sub-area and the second sub-area is different from the pair of the second sub-area and the first sub-area, and describes the determination of the dispatch utility of for dispatching available service providers from the second sub-area to the first sub-area as an example. It should be noted that it is not intended to be limiting, with minor modifications known by a person skilled in the art, the embodiments of the present disclosure can be applied to a scenario that the pair of the first sub-area and the second sub-area is regarded as being the same as the pair of the second sub-area and the first sub-area.
  • the segmentation module 401 may pair the sub-area with each of the rest sub-area (s) to form a pair of sub-areas.
  • an area S may be segmented into sub-areas A, B, and C.
  • the sub-areas A to C may form six pairs of sub-areas, i.e., a pair of sub-areas A and B, a pair of sub-areas B and A, a pair of sub-areas A and C, a pair of sub-areas C and A, a pair of sub-areas B and C, and a pair of sub-areas C and B.
  • the segmentation module 401 may only pair a first sub-area and a second sub-area if they satisfy a certain condition. For example, the segmentation module 401 may pair the first and second sub-areas if the distance between them is less than a threshold distance. As another example, the segmentation module 401 may pair the first and second sub-area according to the supply and demand condition in the two sub-areas. Merely by way of example, only if the first sub-area has an insufficient service supply and the second sub-area has a surplus service supply, the segmentation module 401 may pair the first sub-area and the second sub-area.
  • a sub-area may have an insufficient service supply if the service demand in the sub-area is greater than the service supply in the sub-area.
  • a sub-area may have a surplus service supply if the service supply in the sub-area is greater than the service demand in the sub-area.
  • the processing engine 112A may determine a demand-supply gap of the sub-area in a predetermined time period.
  • the demand-supply gap of the sub-area may be used interchangeably with the supply-demand gap to refer to a difference between the service demand and the service supply in the sub-area.
  • the service demand of the sub-area may be measured by, such as, a number of service orders initiated in the sub-area, a number of requester terminals 130 in the sub-area, a number of requester terminals 130 on which an application for an O2O service is launched in the sub-area, or the like, or any combination thereof.
  • the service supply of the sub-area may be measured by, such as, a number of provider terminals 140 in the sub-area, a number of provider terminals 140 on which an application for an O2O service is launched in the sub- area, a number of available service providers in the sub-area, or the like, or any combination thereof.
  • the demand-supply gap may be measured by, such as a numerical difference of the service demand and the service supply, a ratio of the service demand to the service supply, a ratio of the service supply to the service demand, or the like.
  • An available service provider may refer to a service provider is able or about to be able to provide an O2O service.
  • the available service provider may be a service provider who is waiting for an O2O service order.
  • the available service provider may be a service provider in the process of providing service, but will finish the last service order within a certain period (e.g., 0.5 minutes, 1 minute) .
  • the available service provider may be a service provider in the process of providing service, but can accept an O2O service order at the same time.
  • O2O services such as but not limited to a carpooling service, a delivery service, and a take-way service
  • a service provider may provide services for a plurality of service requesters simultaneously.
  • the service demand and the service supply of the sub-area may be measured by the number of service orders initiated in the sub-area and the number of available service providers in the sub-area, respectively.
  • the demand-supply gap of the sub-area may be a numerical difference between the number of service orders initiated in the sub-area and the number of available service providers in the sub-area, which may be determined by subtracting the number of service orders initiated in the sub-area from the number of available service providers of the sub-area or subtracting the number of available service providers of the sub-area from the number of service orders initiated in the sub-area.
  • the demand-supply gap of the sub-area may be a radio of the number of service orders initiated in the sub-area to the number of available service providers of the sub-area, or a ratio of the number of available service providers of the sub-area to the number of service orders initiated in the sub-area.
  • the predetermined time period may be any time point or any time period with respect to the present moment.
  • the predetermined time period may be the current time point or a very short time period (e.g., the duration being shorter than a threshold) that can be regarded as the current time period.
  • the predetermined time period may be, for example, 30 minutes, 45 minutes, 60 minutes, or any time period after the present moment.
  • the duration of the predetermined time period may be the same or different depend on the time of the present moment.
  • the processing engine 112A may set a shorter predetermined time period for a moment in peak hours (e.g., 8: 00 a.m. to 9: 00 a.m. ) than a moment in normal hours (e.g., 10: 00 a.m. to 11: 00 a.m. ) .
  • the determination module 402 may determine the number of service orders initiated in the sub-area in the predetermined time period and the number of available service providers in the sub-area in the predetermined time, respectively. The determination module 402 may then determine the demand-supply gap based on the number of service orders initiated in the sub-area in the predetermined time and the number of available service providers in the sub-area in the predetermined time. Details regarding the determination of the demand-supply gap may be found elsewhere in the present disclosure (e.g., FIG. 7 and the relevant descriptions thereof) .
  • the processing engine 112A may determine a dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period (also referred to as the dispatch cost for brevity) .
  • the dispatch cost may be configured to measure the cost (e.g., a time cost and/or resource cost) for dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period. A higher dispatch cost may indicate that it is more difficult and costly to dispatch available service providers from the second sub-area to the first sub-area.
  • the dispatch cost may be determined based on a route from second sub-area to the first sub-area. Merely by way of example, the dispatch cost may increase with the distance along the route and/or the estimated travelling time along the route. As another example, the dispatch cost may increase if the traffic condition along the route is congested. In some embodiments, the dispatch cost may be determined based on road condition information related to the route according to one or more operations in process 1000.
  • the processing engine 112A may determine a dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period based on the demand-supply gap of the first sub-area in the predetermined time period, the demand-supply gap of the second sub-area in the predetermined time period, and the dispatch cost.
  • the demand-supply gap of the first sub-area in the predetermined time period may be referred to as a first demand-supply gap
  • the demand-supply gap of the second sub-area in the predetermined time period may be referred to as a second demand-supply gap
  • the dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period may be referred to as the dispatch utility.
  • the dispatch utility may be used to measure the worth (or value) of dispatching available service providers from the second sub-area to the first sub-area.
  • a positive dispatch utility may indicate that it is worthy (or valuable) to dispatch available service providers from the second sub-area to the first sub-area, and the worth (or value) may increase with the value of the positive dispatch utility.
  • a negative dispatch utility may indicate that it is not worthy (or valuable) to dispatch available service providers from the second sub-area to the first sub-area.
  • the dispatch utility may be associated with at least one of the first demand-supply gap, the second demand-supply gap, or the dispatch cost. For example, if the first demand-supply gap shows that the first sub-area has a surplus supply in the predetermined time period, there may be no need to dispatch available service providers to the first sub-area in the predetermined time period and the dispatch utility may be negative. As another example, if the first demand-supply gap shows that the first sub-area has an insufficient supply, the dispatch utility may also depend on the second demand-supply gap of the second sub-area. Merely by way of example, the dispatch utility may be positive if the second sub-area has a surplus supply, and the dispatch utility may be negative if the second sub-area also has an insufficient supply. On the other hand, when other conditions (e.g., the first and the second demand-supply gap) are certain, the dispatch utility may decrease with the increase of the dispatch cost.
  • the dispatch utility may decrease with the increase of the dispatch cost.
  • the determination module 402 may determine the dispatch utility of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period according to Equation (1) as below:
  • G [1] refers to the first demand-supply gap of the first sub-area in the predetermined time period
  • G [2] refers to the second demand-supply gap of the second sub-area in the predetermined time period
  • Cost refers to the dispatch cost of dispatching available service providers from the second sub-area to the first sub-area in the predetermined time period.
  • the dispatch utility may have a positive relation with the difference between G [1] and G [2] .
  • both G [1] and G [2] may be determined by subtracting the service supply from the service demand in the corresponding sub-area. If G [1] is greater than G [2] , the dispatch utility may have a positive value, showing that there is a greater service need in the first sub-area than the second sub-area and it is worthy to dispatch available service providers from the second sub-area to the first sub-area.
  • the dispatch utility has a negative relation with the dispatch cost. The increase of the dispatch cost reduces the value of the dispatch utility when the denominator is fixed.
  • Equation (1) is merely provided for the purposes of illustration, and not intended to limit the scope of the present disclosure. With minor modifications known by a person skilled in the art, the dispatch utility may be determined according to an equation other than Equation (1) illustrated above. In some embodiments, one or more parameters of Equation (1) may be omitted and/or one or more additional parameters may be added into Equation (1) . For example, a parameter referring to a threshold demand-supply gap may be added into the Equation (1) , and the Equation (1) may be modified into a piecewise function.
  • Utility (1, 2) may be equal to negative infinity if G [1] is smaller than the threshold demand-supply gap, and Utility (1, 2) may be determined according to the original Equation (1) if G [1] is greater than or equal to the threshold demand-supply gap.
  • one or more operations may be omitted and/or one or more additional operations may be added.
  • operation 530 may be omitted and the dispatch utility in operation 540 may be determined on the first demand-supply gap and the second demand-supply gap.
  • one or more operation in process 600 may be added into the process 500 to determine a dispatch strategy in the area.
  • the processing engine 112A e.g., the determination module 402 may analyze the first demand-supply gap and/or the second demand-supply gap to determine whether there is a need to determine the dispatch utility.
  • the determination module 402 may determine there is no need to determine the dispatch utility if the first sub-area has a surplus supply or the second sub-area has an insufficient supply. Upon a determination that there is no need to determine the dispatch utility, operations 530 and 540 may be omitted.
  • FIG. 6 is a flowchart illustrating an exemplary process for determining a strategy for dispatching available service providers in an area according to some embodiments of the present disclosure. At least a portion of process 600 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 600 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 600 may be stored in a storage device (e.g., the storage device160, the ROM 230, the RAM 240, the storage 390) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing engine 112 in the server 110, or the processor 220 of the computing device 200) or the CPU 340 of the mobile device 300.
  • the instructions may be transmitted in a form of electronic current or electrical signals.
  • the processing engine 112A may determine, for each pair of a plurality of pairs of sub-areas, a dispatch utility of dispatching available service providers from the second sub-area of the pair to the first sub-area of the pair.
  • a plurality of sub-areas in an area may form a plurality of pairs of sub-areas.
  • Each pair may include a first sub-area and a second sub-area.
  • the determination module 402 may determine a dispatch utility of dispatching available service providers from the second sub-area of the pair to the first sub-area of the pair in the predetermined time period by performing operations 520 to 540 as described in connection with FIG. 5.
  • the processing engine 112A may rank the dispatch utility corresponding to each pair of sub-areas.
  • the dispatch utility of a pair may measure the worth (or value) of dispatching available service providers from the second sub-area to the first sub-area of the pair. If a pair of A and B has a higher dispatch utility than a pair of C and D, it can be speculated that it is more worthy to dispatch available service providers from B to A than dispatching available service providers from D to C. In some embodiments, the determination module 402 may rank the dispatch utilities of the pairs of sub-areas in, for example, a descending order.
  • the processing engine 112A may determine a strategy for dispatching available service providers between the plurality of sub-areas based on the ranking result.
  • the determination module 402 may select one or more candidate pairs among the pairs of sub-areas according to the ranking result.
  • the candidate pair (s) may include top N (e.g., 1, 3, 5, 10%, 30%, or 50%) pair (s) having top N dispatch utilities in the ranking result.
  • the candidate pair (s) may include one or more pairs having a dispatch utility greater than a threshold. The determination module 402 may then determine a dispatch strategy for each of the candidate pair (s) .
  • the dispatch strategy for a candidate pair may be used to dispatch available service providers from the second sub-area of the candidate pair to the first sub-area of the candidate pair.
  • the determination module 402 may transmit a message to available service providers in the second sub-area of the candidate pair to suggest them to go to the first sub-area of the candidate pair.
  • the determination module 402 may allocate a service order in the first sub-area of the candidate pair to an available service provider in the second sub-area of the candidate pair if the available service provider is located within a predetermined distance to the start location of the service order.
  • the determination module 402 may increase the service price in the first sub-area of the candidate pair to attract the available service providers in the second sub-area of the candidate pair to go to the first sub-area.
  • the dispatch strategy may be used to dispatch other types of service resources (e.g., service requesters and/or service orders) between the first and second sub-areas of the candidate pair.
  • the determination module 402 may dispatch service requesters from the first sub-area of the candidate pair to the second sub-area of the candidate pair.
  • the determination module 402 may transmit a message to service requesters in the first sub-area of the candidate pair to suggest them to go to the second sub-area of the candidate pair because the second sub-area has more service providers.
  • the determination module 402 may transmit a coupon that can be used in the second sub-area to the service requesters in the first sub-area.
  • the process 600 may be performed on a plurality of pairs of sub-areas that satisfy one or more conditions.
  • the distance of the first sub-area and the second sub-area of each pair may have to be smaller than a threshold.
  • FIG. 7 is a flowchart illustrating an exemplary process for determining a demand-supply gap of a sub-area in a predetermined time period according to some embodiments of the present disclosure. At least a portion of process 700 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 700 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 700 may be stored in a storage device (e.g., the storage device 160, the ROM 230, the RAM 240, the storage 390) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing engine 112 in the server 110, or the processor 220 of the computing device 200) or the CPU 340 of the mobile device 300.
  • the instructions may be transmitted in a form of electronic current or electrical signals.
  • the processing engine 112A may obtain a plurality of first sets of data related to the sub-area.
  • Each of the plurality of first sets of data may correspond to a first historical time slice and include information related to the sub-area.
  • each of the first sets of data may include at least a historical number of service orders initiated in the sub-area in the corresponding first historical time slice.
  • the historical number of service orders initiated in the sub-area in the first historical time slice may represent the service demand in the sub-area in the first historical time slice.
  • the size of the sub-area may affect the service demand in the sub-area. For example, a sub-area having a larger size may have a greater historical number of service orders initiated in the sub-area than a sub-area having a smaller size.
  • the determination module 402 may normalize the historical number of service orders initiated in the sub-area in each first historical time slice according to the size of the sub-area. For example, the determination module 402 may normalize of the historical number of service orders according to Equation (2) as below:
  • H [i] . T [j] refers to the i th sub-area in the j th first historical time slice
  • O refers to the historical number of service orders initiated in the i th sub-area in the j th first historical time slice
  • O n refers to the normalized historical number of service orders initiated the i th sub-area in the j th first historical time slice
  • Weight refers to a normalization coefficient related to the size of the sub-area.
  • Weight may be determined according to Equation (3) as below:
  • AREA refers to the size of the i th sub-area
  • Threshold refers to a threshold of area size.
  • Weight may be equal to 1.
  • the size of the i th sub-area is equal or larger than the Threshold, the H [i] . T [j] . Weight may decrease with the increase of the size of the i th sub-area.
  • each of the first sets of data related to the sub-area may further include other information related to the sub-area, such as information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information related to the sub-area in the corresponding first historical time slice, weather information related to the sub-area in the corresponding first historical time slice, news information related to the sub-area in the corresponding first historical time slice, policy information related to the sub-area in the corresponding first historical time slice, date information related to the corresponding first historical time slice, or the like, or any combination thereof.
  • other information related to the sub-area such as information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information related to the sub-area in the corresponding first historical time slice, weather information related to the sub-area in the corresponding first historical time slice, news information related to the sub-area in the corresponding first historical time slice, policy information related to the sub-area in the corresponding first
  • the information related to peak-hours in the sub-area may include a determination as to whether the sub-area has a morning peak and/or an evening peak, the time of the morning peak and/or the evening peak in the sub-area, or the like, or any combination thereof.
  • the location information related to the sub-area may include a position (e.g., the coordinate) of the sub-area, a position of a location (e.g. a center point) in the sub-area, a position of a side of the sub-area, a position of a road in the sub-area, or the like, or any combination thereof.
  • the road information related to the sub-area may include a road type, a position, and/or a speed limit of the road (s) in the sub-area.
  • the traffic information may include a traffic volume, a traffic congestion condition, a number of traffic accidents and their locations, a vehicle speed (e.g., an average speed, an instantaneous speed) information of the sub-area in the corresponding first historical time slice, or the like, or any combination thereof.
  • the weather information may include an index of air quality, a temperature, visibility, humidity, a pressure, a wind speed, an index of PM 2.5, an amount of precipitation, a type of precipitation (e.g., snow, rain) , a percentage likelihood of precipitation of the sub-area in the corresponding first historical time slice, or the like, or any combination thereof.
  • the policy information may include laws and rules related to traffic, to vehicle management (e.g., only vehicles with certain plate numbers (e.g., even or odd) can be driven in certain areas) , to speed limits in the sub-area in the corresponding first historical time slice, or the like, or any combination thereof.
  • the news information may include information related to one or more events (e.g., a concert, an exhibition, a competition, a market promotion) hold in sub-area in the corresponding first historical time slice.
  • the date information may include a characteristic of the corresponding first historical time slice, for example, being a weekday, a weekend, a holiday, and/or a festival.
  • the first historical time slices may be a series of time periods before the predetermined time period. Each of the first historical time slices may have the same duration. In some embodiments, the plurality of first historical time slices may be within a certain time period before the predetermined time period. The certain time period may be any suitable value, for example, 1 hour, 12 hours, 24 hours, 72 hours, 100 hours, or the like. In some embodiments, the first historical time slices may be within 1 hour to 72 hours before the predetermined time period. In some embodiments, a day may be divided uniformly into a certain number of time slices, for example, 48 time slices each of which lasts for 30 minutes, 24 time slices each of which lasts for 1 hour, or the like.
  • the first historical time slices may be a plurality of time slices before the time slice corresponding to the predetermined time period. For example, if the predetermined time period is 4: 30 p.m. to 5: 00 p.m., the first historical time slices may be 48 time slices before 4: 30 p.m. each of which has a duration of 30 minutes.
  • the processing engine 112A may predict a number of service orders initiated in the sub-area in the predetermined time period by inputting the first sets of data related to the sub-area into a service demand prediction model.
  • the service demand prediction model may be used to determine the number of service orders initiated in the sub-area in the predetermined time period based on the input.
  • the service demand prediction model may be a recurrent neural network (RNN) model, for example, a Long Short-Term Memory (LSTM) model.
  • RNN recurrent neural network
  • LSTM Long Short-Term Memory
  • the service demand prediction model may be obtained from one or more components of the O2O service system 100 (e.g., the storage device 150, the ROM 230, and/or the RAM 240) , or an external source via the network 120. Additionally or alternatively, the service demand prediction model may be generated by the processing engine 112B by training a preliminary model using sample data. Details regarding the generation of the service demand prediction model may be found elsewhere in the present disclosure (e.g., FIG. 8 and the relevant descriptions thereof) .
  • the processing engine 112A may (e.g., the determination module 402) obtain a plurality of second sets of data related to the sub-area.
  • Each of the plurality of second sets of data may correspond to a second historical time slice and include information related to the sub-area.
  • each of the second sets of data may include at least a historical number of available service providers in the sub-area in the corresponding second historical time slice.
  • the historical number of available service providers in the sub-area in the second historical time slice may represent the service supply in the sub-area in the second historical time slice.
  • the historical number of available service providers in the sub-area in a second historical time slice may be a difference between a first number of available service providers entering the sub-area in the second historical time slice and a second number of available service providers leaving the sub-area in the second historical time slice.
  • an available service provider may not stay in a sub-area for a long period (e.g., 20 minutes or 30 minutes) .
  • the service supply of the sub-area in the second historical time slice may be determined without considering the available service providers who always stayed in the sub-area in the second historical time slice.
  • the determination module 402 may obtain or determine the first number of available service providers and the second number of available service providers, respectively. The determination module 402 may further determine the historical number of available service providers in the sub-area in the second historical time slice based on the second number and the first number of available service providers. Optionally, the determination module 402 may normalize the historical number of available service providers in each second set of data to eliminate or reduce the effect of the size of the sub-area. The normalization of the historical number of available service providers may be substantially similar to that of the historical number of service orders as described in connection with operation 710, and the descriptions thereof are not repeated here.
  • the sub-area may be a polygon having a plurality of sides, such as a hexagon.
  • the first number of available service providers may be an accumulated number of the number of available service providers entering each side of the sub-area in the second historical time slice.
  • the second number of available service providers may be an accumulated number of the number of available service providers leaving each side of the sub-area in the second historical time slice.
  • the historical number of available service providers in the sub-area in the second historical time slice may be determined according to Equation (4) as below:
  • H [i] . T [j] . A ⁇ K (H [i] . T [j] . E [k] . in-H [i] . T [j] . E [k] . out) (4)
  • A refers to the historical number of available service providers in the i th sub-area in the j th second historical time slice
  • E [k] refers to the k th side of the sub-area
  • K refers to the total number of sides of the sub-area
  • E [k] . in refers to the number of available service providers entering the k th side of the i th sub-area in the j th second historical time slice
  • H [i] . T [j] . E [k] . out refers to the number of available service providers leaving the k th side of the i th sub-area in the j th second historical time slice.
  • the determination module 402 may further normalize the H [i] . T [j] . A by multiplying Equation (4) with a normalization coefficient related to the size of the sub-area (e.g., a normalization coefficient determined according to Equation (3) ) .
  • each of the second sets of data related to the sub-area may further include other information related to the sub-area, such as information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information of the sub-area in the corresponding second historical time slice, weather information related to the sub-area in the corresponding second historical time slice, news information related to the sub-area in the corresponding second historical time slice, policy information related to the sub-area in the corresponding second historical time slice, date information related to the corresponding second historical time slice, a first number of available service providers entering the sub-area in the corresponding second historical time slice, or a second number of available service providers leaving the sub-area in the corresponding second historical time slice.
  • other information related to the sub-area such as information related to peak-hours in the sub-area, location information related to the sub-area, road information related to the sub-area, traffic information of the sub-area in the corresponding second historical time slice, weather information related to the sub-area in the corresponding second
  • the information related to peak-hours, the location information, the road information, the traffic information, the weather information, the news information, the policy information, and the date information related to the sub-area may be substantially similar to that described in connection with operation 710, and the descriptions thereof are not repeated here.
  • the sub-area may be a polygon including a plurality of sides.
  • the second set of data corresponding to a second historical time slice may include a first number of available service providers entering each side of the sub-area in the second historical time slice and/or a second number of available service providers leaving each side of the sub-area in the second historical time slice.
  • the second historical time slices may be a series of time periods before the predetermined time period. Each of the second historical time slices may have the same duration. In some embodiments, the second historical time slices may be the same as the first historical time slices. For example, both the first historical time slices and the second historical time slices may be 48 time slices before the predetermined time period, each of which lasts for 30 minutes. Alternatively, the second historical time slices may be different from the first historical time slices. For example, the duration of each second historical time slice may be slightly different from the duration of each first historical time slice.
  • the durations of the first and second historical time slices may be regarded as being slightly different from each other.
  • the numbers of the first historical time slices and the second historical time slice may be different.
  • the first historical time slices may be 48 time slices before the predetermined time period, while the second historical time slices may be 50 time slices before the predetermined time period.
  • the processing engine 112A may predict a number of available service providers in the sub-area in the predetermined time period by inputting the second sets of data related to the sub-area into a service supply prediction model.
  • the service supply prediction model may be used to determine the number of available service providers in the sub-area in the predetermined time period based on the input.
  • the service supply prediction model may be an RNN model, for example, an LSTM model.
  • the service supply prediction model may be obtained from one or more components of the O2O service system 100 (e.g., the storage device 150, the ROM 230, and/or the Ram 240) , or an external source via the network 120. Additionally or alternatively, the service supply prediction model may be generated by the processing engine 112B by training a preliminary model using sample data. Details regarding the generation of the service supply prediction model may be found elsewhere in the present disclosure (e.g., FIG. 9 and the relevant descriptions thereof) .
  • the processing engine 112A may determine the demand-supply gap of the sub-area in the predetermined time period based on the number of service orders initiated in the sub-area in the predetermined time period and the number of available service providers in the sub-area in the predetermined time period.
  • the demand-supply gap may be a numerical difference between the number of service orders initiated in the sub-area in the predetermined time period and the number of available service providers in the sub-area in the predetermined time period.
  • one or more operations in the process 700 may be omitted and/or one or more additional operations may be added to the process 700.
  • the operations of the process 700 may be performed in any order. For example, operations 710 and 730 may be performed simultaneously or operation 730 may be performed before operation 710.
  • the determination module 402 may determine historical number available service providers in the sub-area in each second set of data by taking the available service providers stayed in the sub-area in the corresponding second historical time slice into consideration.
  • FIG. 8 is a flowchart illustrating an exemplary process for generating a service demand prediction model according to some embodiments of the present disclosure. At least a portion of process 800 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 800 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 800 may be stored in a storage device (e.g., the storage device 160, the ROM 230, the RAM 240, the storage 390) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing engine 112B in the server 110, or the processor 220 of the computing device 200) or the CPU 340 of the mobile device 300.
  • the service demand prediction model may be used in operation 720 to predict the number of service orders initiated in the sub-area in the predetermined time period.
  • the processing engine 112B may obtain a plurality of first sample set of data related to a plurality of sample sub-areas.
  • the sample sub-areas may include one or more of the sub-areas determined in operation 510. Additionally or alternatively, the sample sub-areas may include one or more sub-areas segmented by the processing engine 112A from another area.
  • Each of the first sample sets of data may correspond to a sample historical time slice and include information related to the sample sub-areas.
  • each first sample set of data may at least include a historical number of service orders initiated in each sample sub-area in the corresponding sample historical time slice.
  • the historical number of service orders initiated in a sample sub-area may be substantially similar to the historical number of service orders initiated in a sub-area as described in connection with operation 710, and the descriptions thereof are not repeated.
  • each of the first sample sets of data related to the sample sub-areas may include other information related to each sample sub-area, such as information related to peak-hours in the sample sub-area, location information related to the sample sub-area, road information related to the sample sub-area, traffic information related to the sample sub-area in the corresponding sample historical time slice, weather information related to the sample sub-area in the corresponding sample historical time slice, news information related to the sample sub-area in the corresponding sample historical time slice, policy information related to the sample sub-area in the corresponding sample historical time slice, date information related to the corresponding sample historical time slice, or the like, or any combination thereof.
  • the information related to a sample sub-area included each first sample set of data may be substantially similar to the information related to a sub-area included in a first set of data as described in connection with operation 710, and the descriptions thereof are not repeated.
  • the sample historical time slices may be a series of time periods before the present moment. Each of the sample historical time slices may have the same duration (e.g., 15 minutes, 30 minutes, 45 minutes, or 60 minutes) .
  • the duration of the sample historical time slices may be a default parameter of the O2O service system 100 or be adjusted according to different situations.
  • the sample historical time slices may be within a certain time period before the present moment. The certain time period may be, for example, one months, two months, three months, five months, or any other suitable value.
  • a day may be divided uniformly into a certain number of time slices, for example, 48 time slices each of which lasts for 30 minutes, 24 time slices each of which lasts for 1 hour, or the like.
  • the sample historical time slices may be a plurality of time slices before the time slice corresponding to the present moment. For example, the sample historical time slices may be 2, 880 time slices within two months before the present moment, each of which has a duration of 30 minutes.
  • the processing engine 112B may obtain a preliminary model.
  • the preliminary model may have one or more preliminary parameters.
  • the preliminary parameters of the preliminary model may be a default setting of the O2O service system 100 or be adjustable in different situations.
  • the preliminary model may be an RNN model, for example, an LSTM model.
  • the LSTM model may include a plurality of units, each of which includes of a cell, an input gate, an output gate, and a forget gate.
  • the cell may be configured to "remember" values over arbitrary time intervals.
  • the input gate may be configured to control the input of new information that flows into the cell.
  • the forget gate may be configured to determine the information that remains in the cell.
  • the output gate may be configured to determine the information that is outputted from the cell.
  • the processing engine 112B may generate the service demand prediction model by training the preliminary model using the first sample sets of data related to the sample sub-areas.
  • the sample historical time slices may be denoted as a time sequence ⁇ t 1 , t 2 , ...t n ⁇
  • the first sample sets of data corresponding to the sample historical time slices related to a sample sub-area may be denoted as ⁇ d 1 , d 2 , ...d n ⁇
  • the historical numbers of service orders initiated in the sample sub-area in the sample historical time slices may be denoted as ⁇ o 1 , o 2 , ...o n ⁇ .
  • the training module 404 may determine a predicted o i in the sample sub-area in t i by inputting ⁇ d 1 , d 2 , ...d i-1 ⁇ corresponding to ⁇ t 1 , t 2 , ...t i-1 ⁇ into the preliminary model.
  • the training module 404 may determine a predicted o n in the last sample historical time slice (e.g., last 30 minutes) by inputting ⁇ d 1 , d 2 , ...d n-1 ⁇ corresponding to ⁇ t 1 , t 2 , ...t n-1 ⁇ into the preliminary model.
  • the training module 404 may further determine a difference between the predicted o i and known o i of the plurality of sample sub-areas, which may also be referred to as a loss function for brevity.
  • exemplary loss functions may include an absolute percent error (MAPE) , a mean squared error (MSE) , a root mean square error (RMSE) , a cross entropy loss, or the like.
  • MSE mean squared error
  • RMSE root mean square error
  • the training module 404 may further adjust the preliminary model (e.g., adjust the preliminary parameters) until the loss function reaches a desired value. After the loss function reaches the desired value, the adjusted preliminary binary model may be designated as the service demand prediction model.
  • FIG. 9 is a flowchart illustrating an exemplary process for generating a service supply prediction model according to some embodiments of the present disclosure. At least a portion of process 900 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3. In some embodiments, one or more operations of process 900 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 800 may be stored in a storage device (e.g., the storage device 160, the ROM 230, the RAM 240, the storage 390) as a form of instructions, and invoked and/or executed by the server 110 (e.g., the processing engine 112B in the server 110, or the processor 220 of the computing device 200) or the CPU 340 of the mobile device.
  • the service supply prediction model may be used in operation 740 to predict the number of available service providers in the sub-area in the predetermined time period.
  • the processing engine 112B may obtain a plurality of second sample sets of data related to a plurality of sample sub-areas.
  • the sample sub-areas may include one or more of the sub-areas determined in operation 510. Additionally or alternatively, the sample sub-areas may include one or more sub-areas segmented by the processing engine 112A from another area.
  • Each of the second sample sets of data may corresponding to a sample historical time slice and include information related to the sample sub-areas.
  • each second sample set of data may at least include a historical number of available service providers in the each sample sub-area in the corresponding sample historical time slice.
  • the historical number of available service providers in the a sample sub-area may be substantially similar to the historical number of available service providers in a sub-area as described in connection with operation 730, and the descriptions thereof are not repeated
  • each of the second sample sets of data related to the sample sub-areas may include other information related to each sample sub-area, such as peak-hours in the sample sub-area, location information related to the sample sub-area, road information related to the sample sub-area, traffic information of the sample sub-area in the corresponding sample historical time slice, weather information related to the sample sub-area in the corresponding sample historical time slice, news information related to the sample sub-area in the corresponding sample historical time slice, policy information related to the sample sub-area in the corresponding sample historical time slice, date information related to the corresponding sample historical time slice, a first number of available service providers entering the sample sub-area in the corresponding sample historical time slice, or a second number of available service providers leaving the sample sub-area in the corresponding sample historical time slice.
  • the information related to a sample sub-area included each second sample set of data may be substantially similar to the information related to a sub-area included in a second set of data as described in connection with operation 730, and the descriptions thereof are not repeated.
  • the processing engine 112B (e.g., the obtaining module 403) may obtain a preliminary model. Operation 920 may be performed in a similar manner with operation 820, and the descriptions thereof are not repeated here.
  • the processing engine 112 may generate the service supply prediction model by training the preliminary model using the plurality of second sample sets of data related to the plurality of sample sub-areas. Operation 930 may be performed in a similar manner with operation 830, and the descriptions thereof are not repeated here.
  • one or more operations in the processes 800 and 900 may be omitted and/or one or more additional operations may be added to the process 900 and/or the process 900.
  • an operation may be added after 830 to test the service demand prediction model or after 930 to test the service supply prediction model.
  • FIG. 10 is a flowchart illustrating an exemplary process for determining a dispatching cost of dispatching available service providers from a second sub-area to a first sub-area according to some embodiments of the present disclosure.
  • process 1000 may be implemented on the computing device 200 as illustrated in FIG. 2 or the mobile device 300 as illustrated in FIG. 3.
  • one or more operations of process 1000 may be implemented in the O2O service system 100 as illustrated in FIG. 1.
  • one or more operations in the process 1000 may be stored in a storage device (e.g., the storage device 160, the ROM 230, the RAM 240, the storage 390, etc.
  • part or all of the process 1000 may be performed to achieve operation 530 as described in connection with FIG. 5.
  • the processing engine 112A (e.g., the determination module 402) may plan a route from the second sub-area to the first sub-area.
  • the route between the first and second sub-areas may be a route between a first location of the first sub-area and a second location of the sub-area.
  • the first location may be any location within the first sub-area
  • the second location may be any location within the second sub-area.
  • the first location and the second location may be a center point of the first sub-area and the second sub-area, respectively.
  • the route between the first and second sub-areas may be a linear route or a route that extends along one or more roads in the first and second sub-areas.
  • the determination module 402 may plan a plurality of possible routes from the second sub-area to the first sub-area. The determination module 402 may then select one route among the possible routes as the route from the second sub-area to the first sub-area. The selection of the route may be performed randomly or according to a certain rule. Merely by way of example, the route with the shortest route distance or travelling time may be selected as the route from the second sub-area to the first sub-area.
  • the processing engine 112A may obtain road condition information related to the road.
  • Exemplary road condition information related to the route may include a distance of the route, an estimated travelling time along the route, a traffic condition along the route, a number of intersections along the route, a number of the traffic lights along the route, the type of a road (e.g., high way, expressway, elevated road, main road, secondary road) along the route, traffic accident information related to the route, traffic restrictions along the route, or the like, or any combination thereof.
  • the traffic condition along the route may refer to the congestion of the route, which may be measured by, such as the travel speed of service providers along the route, the traffic volume along the route, travel time of along the route, or the like, or any combination thereof.
  • the road condition information may include at least one of the distance of the route, the estimated travelling time along the route, or the traffic condition along the route.
  • the road condition information related to the route may include real-time road condition information and/or historical road condition information within a certain time period (e.g., 30 minutes, 1 hour) before the present moment.
  • At least part of the road condition information may be obtained from an external source by, for example, the processing engine 112A (e.g., determination module 402) via the network 120.
  • the processing engine 112A e.g., determination module 402 may obtain traffic condition information, traffic accident information, road type information of one or more roads along the route from, for example, a map platform, a traffic website or database via the network 120.
  • at least part of the road condition information related to the route may be determined by the processing engine 112A (e.g., the determination module 402) .
  • the determination module 402 may determine the estimated travelling time along the route based on various factors, such as the distance of the route, the traffic condition along the route, the number of intersections along the route, the number of the traffic lights along the route, the type of a road along the route, traffic accident information, traffic restrictions and/or rules, weather information, or the like, or any combination thereof.
  • the determination module 402 may determine the traffic condition along the route based on the travel speed of service providers along the route. To this end, the determination module 402 may segment the route into a plurality of road segments. Different road segments may have the same length or different lengths. For each of the road segments, the determination module 402 may determine a travel speed of one or more service providers passing through the road segment. In some embodiments, the service provider (s) passing through the road segment may include one or more service providers who is at the road segment at the present moment and/or who passed through the road segment within a time period (e.g., 30 minutes) before the present moment.
  • a time period e.g. 30 minutes
  • the travel speed of service provider (s) passing through the road segment may be, for example, an average (or median) value of the instantaneous speed of the service provider (s) at the road segment at present moment, an average (or median) value of the average speed of the service provider (s) passing though the road segment, or the like, or any combination thereof.
  • the travel speed of one or more service provider (s) passing through a road segment may be determined according to Equation (5) as below:
  • i refers to the i th road segment of the plurality of road segments
  • Vi refers to the travel speed of the service provider (s) passing through the i th road segment
  • J refers to a number of the service provider (s) passing through the i th road segment
  • j refers to the j th service provider among the service provider (s) passing through the i th road segment
  • Traj j, i refers to a travelling trajectory of the j th service provider on the i th road segment
  • Length (Traj j, i ) refers to a length of the Traj j, i
  • Time (Traj j, i ) refers to a travel time corresponding to the Traj j, i
  • W j refers to a weight regarding the Traj j, i .
  • the weight W j may be related to the confidence factor of the Traj j, i .
  • the confidence factor may be determined by the processing engine 112A by analyzing the Traj j, i . For example, the processing engine 112A may determine whether the Traj j, i includes an abnormal stop (e.g., the corresponding service provider stops for a period longer than a threshold) , an uneven travelling speed, and/or an obvious different travel speed with respect to other traveling trajectory in the same road segments, or the like, or any combination thereof.
  • an abnormal stop e.g., the corresponding service provider stops for a period longer than a threshold
  • the processing engine 112A may assign a low confidence factor (e.g., 0) and a low weight W j (e.g., 0) to the Traj j, i .
  • a low confidence factor e.g., 0
  • W j e.g., 0
  • the determination module 402 may determine the traffic condition of the route based on the travel speeds corresponding to the plurality of road segments.
  • the determination module 402 may determine a congestion level of each road segment based on the corresponding travel speed.
  • the congestion levels of a road segment may include “extremely congested” , “congested” , “slow” , and “smooth” , each of which may correspond to a travel speed range.
  • the travel speed range [0 km/h, 5 km/h] may correspond to “extremely congested” and the travel speed range [25 km/h, + ⁇ ] may correspond to “smooth” .
  • the determination module 402 may then determine the traffic condition of the route based on the congestion levels of the road segments of the route.
  • the determination module 402 may determine the most common congestion level of the road segments as the traffic condition of the road. Additionally or alternatively, determination module 402 may determine an average travel speed of the travel speeds of the road segments, and determine the traffic condition of the route based on one or more travel speed thresholds. For example, if the average travel speed is less than 5 km/h, the traffic condition of the route may be extremely congested. As another example, if the average travel speed is greater than 25 km/h, the traffic condition of the route may be smooth.
  • the processing engine 112A may determine the dispatch cost based on the road condition information.
  • the determination module 402 may determine the dispatch cost based on one or more types of the road condition information as described in connection with operation 1120.
  • the dispatch cost may have a positive relationship with the distance along the route (or the estimated travelling time along the route) .
  • the determination module 402 may assign a higher dispatch cost for a route A than a route B if the distance (or the estimated travelling time) along the route A is larger than the route B.
  • the determination module 402 may determine the dispatch cost based on the estimated travelling time and the traffic condition along the route according to Equation (6) as below:
  • refers to a penalty coefficient related to the traffic condition along the route.
  • may be determined based on the congestion level of the route as described in connection with operation 1020. The value of ⁇ may increase with the congestion level of the route. Merely by way of example, the value of ⁇ corresponding to the congestion levels “extremely congested” , “congested” , “slow” , and “smooth” may be 3, 2, 1, and 0, respectively.
  • Equation (5) and/or Equation (6) may be omitted.
  • the ⁇ in Equation (6) may be omitted and the dispatch cost may be determined solely on the eta (1, 2) .
  • the Equation (5) and/or Equation (6) may further include one or more additional parameters may be added. For example, a parameter related to the number of traffic accidents occurred along the route may be added into the Equation (6) .
  • the dispatch cost as illustrated in Equation (6) may be used to determine the dispatch utility for dispatching available service providers from the second sub-area to the first sub-area as described in connection with operation 540.
  • the dispatch utility for dispatching available service providers from the second sub-area to the first sub-area may be determined according to Equation (7) as below:
  • 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 "block, " “module, ” “engine, ” “unit, ” “component, ” 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.
  • 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 1703, Perl, COBOL 1702, 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
  • an Internet Service Provider for example, AT&T, MCI, Sprint, EarthLink, MSN, etc.
  • SaaS software as a service

Landscapes

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

Abstract

L'invention concerne un procédé de distribution de fournisseurs de services disponibles dans une plate-forme de service O2O. Le procédé peut consister à segmenter une zone en une pluralité de sous-zones. Les sous-zones peuvent former au moins une paire de sous-zones comprenant une première sous-zone et une seconde sous-zone. Le procédé peut également consister à déterminer, pour chacune des première et seconde sous-zones, un écart entre la demande et l'offre de la sous-zone dans une période de temps prédéfinie. Le procédé peut en outre consister à déterminer un coût de distribution de la distribution des fournisseurs de services disponibles de la seconde sous-zone à la première sous-zone dans la période de temps prédéfinie. Le procédé peut en outre consister à déterminer un utilitaire de distribution de la distribution de fournisseurs de services disponibles de la seconde sous-zone à la première sous-zone dans la période de temps prédéterminée.
PCT/CN2018/097205 2018-07-26 2018-07-26 Systèmes et procédés de distribution de fournisseurs de services Ceased WO2020019237A1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/CN2018/097205 WO2020019237A1 (fr) 2018-07-26 2018-07-26 Systèmes et procédés de distribution de fournisseurs de services
CN201880090487.3A CN111801701B (zh) 2018-07-26 2018-07-26 用于调度服务提供者的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2018/097205 WO2020019237A1 (fr) 2018-07-26 2018-07-26 Systèmes et procédés de distribution de fournisseurs de services

Publications (1)

Publication Number Publication Date
WO2020019237A1 true WO2020019237A1 (fr) 2020-01-30

Family

ID=69181062

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2018/097205 Ceased WO2020019237A1 (fr) 2018-07-26 2018-07-26 Systèmes et procédés de distribution de fournisseurs de services

Country Status (2)

Country Link
CN (1) CN111801701B (fr)
WO (1) WO2020019237A1 (fr)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367169A (zh) * 2020-02-07 2020-07-03 大连富士冰山智控系统有限公司 控制系统、控制装置以及控制方法
CN112529279A (zh) * 2020-12-02 2021-03-19 北京嘀嘀无限科技发展有限公司 一种生成接单指导信息的方法、装置、计算机设备和介质
CN114096973A (zh) * 2020-03-06 2022-02-25 格步计程车控股私人有限公司 需求通知设备、计算设备及需求通知方法
CN114358196A (zh) * 2022-01-10 2022-04-15 腾讯科技(深圳)有限公司 高架场景下的训练样本生成方法、装置、设备及存储介质
US20230351279A1 (en) * 2022-04-28 2023-11-02 Maplebear Inc. (Dba Instacart) Predicting shopper supply during a time interval based on interactions by shoppers with a shopper assignment application during earlier time intervals

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112669603B (zh) * 2020-12-17 2023-04-07 广东南方通信建设有限公司 基于大数据的城市交通协同方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170091856A1 (en) * 2015-09-28 2017-03-30 Skurt, Inc. Vehicle delivery through a mobile computing device
CN107545486A (zh) * 2016-06-28 2018-01-05 滴滴(中国)科技有限公司 一种用车订单处理方法及服务器
CN108010306A (zh) * 2017-08-16 2018-05-08 北京嘀嘀无限科技发展有限公司 运力调度方法、运力调度系统及服务器

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299177A1 (en) * 2009-05-22 2010-11-25 Disney Enterprises, Inc. Dynamic bus dispatching and labor assignment system
CN105389980B (zh) * 2015-11-09 2018-01-19 上海交通大学 基于长短时记忆递归神经网络的短时交通流预测方法
US9989964B2 (en) * 2016-11-03 2018-06-05 Mitsubishi Electric Research Laboratories, Inc. System and method for controlling vehicle using neural network
CN106781447A (zh) * 2017-02-28 2017-05-31 广州交通信息化建设投资营运有限公司 一种智能出租车调度通信方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170091856A1 (en) * 2015-09-28 2017-03-30 Skurt, Inc. Vehicle delivery through a mobile computing device
CN107545486A (zh) * 2016-06-28 2018-01-05 滴滴(中国)科技有限公司 一种用车订单处理方法及服务器
CN108010306A (zh) * 2017-08-16 2018-05-08 北京嘀嘀无限科技发展有限公司 运力调度方法、运力调度系统及服务器

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367169A (zh) * 2020-02-07 2020-07-03 大连富士冰山智控系统有限公司 控制系统、控制装置以及控制方法
CN114096973A (zh) * 2020-03-06 2022-02-25 格步计程车控股私人有限公司 需求通知设备、计算设备及需求通知方法
CN114096973B (zh) * 2020-03-06 2023-03-24 格步计程车控股私人有限公司 需求通知设备、计算设备及需求通知方法
CN112529279A (zh) * 2020-12-02 2021-03-19 北京嘀嘀无限科技发展有限公司 一种生成接单指导信息的方法、装置、计算机设备和介质
CN114358196A (zh) * 2022-01-10 2022-04-15 腾讯科技(深圳)有限公司 高架场景下的训练样本生成方法、装置、设备及存储介质
CN114358196B (zh) * 2022-01-10 2024-10-01 腾讯科技(深圳)有限公司 高架场景下的训练样本生成方法、装置、设备及存储介质
US20230351279A1 (en) * 2022-04-28 2023-11-02 Maplebear Inc. (Dba Instacart) Predicting shopper supply during a time interval based on interactions by shoppers with a shopper assignment application during earlier time intervals
US12265933B2 (en) * 2022-04-28 2025-04-01 Maplebear Inc. Predicting shopper supply during a time interval based on interactions by shoppers with a shopper assignment application during earlier time intervals

Also Published As

Publication number Publication date
CN111801701A (zh) 2020-10-20
CN111801701B (zh) 2024-08-20

Similar Documents

Publication Publication Date Title
WO2020019237A1 (fr) Systèmes et procédés de distribution de fournisseurs de services
CN111862585B (zh) 用于交通预测的系统和方法
US11085792B2 (en) Systems and methods for determining estimated time of arrival
CN111476588B (zh) 订单需求预测方法、装置、电子设备及可读存储介质
CN109313846B (zh) 用于推荐上车点的系统和方法
CN109155104B (zh) 推荐估计到达时间的系统和方法
US11037441B2 (en) Systems and methods for traffic light timing
CN112154473B (zh) 用于推荐上车点的系统和方法
JP6737805B2 (ja) 将来の輸送サービス時点の予測分布を求めるシステム及び方法
US20200120037A1 (en) Systems and methods for transport capacity scheduling
US20200042885A1 (en) Systems and methods for determining an estimated time of arrival
WO2019219088A1 (fr) Systèmes et procédés d'attribution de commandes
WO2021056303A1 (fr) Systèmes et procédés de détermination d'un emplacement de capture
CN110689719B (zh) 用于识别封闭路段的系统和方法
AU2018102202A4 (en) Systems and methods for cheat examination
CN110741225B (zh) 确定目标站点的系统和方法
AU2017268741A1 (en) Systems and methods for distributing a service request for an on-demand service
US11640763B2 (en) Systems and methods for recommending a pickup location
WO2020113626A1 (fr) Systèmes et procédés de détermination d'heure d'arrivée estimée
CN113924460A (zh) 确定服务请求的推荐信息的系统和方法
JP2021517691A (ja) サービス要求を処理するためのデバイスおよび方法
CN111223293B (zh) 分析交通拥堵的系统和方法
WO2019128477A1 (fr) Systèmes et procédés d'attribution de demandes de service
CN111275232A (zh) 生成未来价值预测模型的方法和系统
WO2019161792A1 (fr) Systèmes et procédés d'estimation de données associées à une plateforme de service en ligne-hors ligne

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: 18927646

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: 18927646

Country of ref document: EP

Kind code of ref document: A1