US20230164228A1 - Service information and configuration user interface - Google Patents
Service information and configuration user interface Download PDFInfo
- Publication number
- US20230164228A1 US20230164228A1 US18/099,820 US202318099820A US2023164228A1 US 20230164228 A1 US20230164228 A1 US 20230164228A1 US 202318099820 A US202318099820 A US 202318099820A US 2023164228 A1 US2023164228 A1 US 2023164228A1
- Authority
- US
- United States
- Prior art keywords
- service
- requesting user
- location
- computer system
- option
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 27
- 230000004044 response Effects 0.000 claims description 13
- 238000004891 communication Methods 0.000 claims description 10
- 230000003993 interaction Effects 0.000 claims 3
- 230000002452 interceptive effect Effects 0.000 abstract 1
- 230000000875 corresponding effect Effects 0.000 description 21
- 238000005457 optimization Methods 0.000 description 21
- 238000004364 calculation method Methods 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 238000012545 processing Methods 0.000 description 9
- 238000010586 diagram Methods 0.000 description 7
- 238000013507 mapping Methods 0.000 description 6
- 238000012790 confirmation Methods 0.000 description 4
- 230000007423 decrease Effects 0.000 description 4
- 241000579297 Citrus mosaic sadwavirus Species 0.000 description 3
- 230000001413 cellular effect Effects 0.000 description 3
- 238000011176 pooling Methods 0.000 description 3
- 230000003190 augmentative effect Effects 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012797 qualification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/51—Discovery or management thereof, e.g. service location protocol [SLP] or web services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/04—Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
- G06Q10/047—Optimisation of routes or paths, e.g. travelling salesman problem
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/201—Price look-up processing, e.g. updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/28—Pre-payment schemes, e.g. "pay before"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
- G06Q20/3224—Transactions dependent on location of M-devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Systems or methods specially adapted for specific business sectors, e.g. utilities or tourism
- G06Q50/30—Transportation; Communications
-
- G06Q50/40—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Definitions
- User centric network services typically sequence users through a number of selection interfaces so that the user can specify certain information for a desired type of service, including service level selections and preferences.
- the number of on-demand services for user selection is also increasing, creating inconvenience for human operators.
- the time needed for selection can occupy an interface device, creating performance issues and draining resources of the operative selection device.
- FIG. 1 is a block diagram illustrating an example network computer system in communication with user devices and service provider devices, in accordance with examples described herein;
- FIG. 2 is a block diagram illustrating an example computing device of a requesting user executing a designated service application for an on-demand network-based service, as described herein;
- FIGS. 3 A and 3 B illustrate example user interfaces on a computing device of a requesting user, according to examples described herein;
- FIGS. 4 A, 4 B, 4 C, 4 D, 4 E, 4 F, 4 G, 4 H, and 4 I illustrate other example user interfaces on a computing device of a requesting user, according to examples described herein;
- FIG. 5 is a flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein;
- FIG. 6 is another flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein;
- FIG. 7 is a block diagram illustrating a computer system upon which examples described herein may be implemented.
- a network computer system is described herein that manages an on-demand network-based service linking available service providers with requesting users throughout a given region (e.g., a metroplex such as the San Francisco Bay Area).
- the network computer system can receive service requests for on-demand services (e.g., a transport service or a delivery service) from requesting users (e.g., a rider) via a designated service application executing on the users' mobile computing devices.
- on-demand services e.g., a transport service or a delivery service
- requesting users e.g., a rider
- the network computer system can identify a number of proximate service providers (e.g., available drivers) and transmit a service invitation to one or more service provider devices of the proximate service providers to fulfill the service request.
- proximate service providers e.g., available drivers
- the service providers can either accept or decline the service invitation based on, for example, a service location being impractical for the service provider.
- the network computer system can identify a plurality of candidate service providers to fulfill or complete the service request based on a service location indicated in the service request.
- an “optimal” service provider corresponds to a service provider, from a candidate set of service providers that has been determined to be most suitable to completing a particular service request based on one or more factors.
- the factor(s) can comprise the service provider being closest to a rendezvous point with the requesting user, having a lowest estimated time of arrival (ETA) to the rendezvous point, an estimated collective value generated by the service provider in being selected as compared to other service providers, and other factors.
- ETA estimated time of arrival
- the network computer system can identify a set of candidate service providers (e.g., twenty or thirty service providers within a certain proximity of the service location), and select an optimal service provider (e.g., a closest service provider to the rendezvous point, a service provider with the shortest estimated travel time from the rendezvous point, a service provider traveling to a location within a specified distance or specified travel time to an end location, etc.) from the candidate service providers to fulfill or complete the service request based on any of the above factors.
- a set of candidate service providers e.g., twenty or thirty service providers within a certain proximity of the service location
- an optimal service provider e.g., a closest service provider to the rendezvous point, a service provider with the shortest estimated travel time from the rendezvous point, a service provider traveling to a location within a specified distance or specified travel time to an end location, etc.
- a computing system that causes a user interface specific to the service application to be generated on a display screen of a computing device of a requesting user.
- the computing system can comprise a backend datacenter or server system(s) (e.g., comprising the network computer system) that hosts the on-demand network-based service.
- server system(s) e.g., comprising the network computer system
- one or more processes described in connection with the computing system may be performed on the processing resources of the requesting user's mobile computing device via execution of the service application.
- the processes described herein can be wholly or partially executed by either the network computer system or the mobile computing device of the requesting user executing the service application.
- the network computer system can establish a communication link with the computing device of the requesting user upon execution of the service application, and provide data corresponding to a plurality of service options for the on-demand service.
- the network computer system can receive data indicating a service location (e.g., an end point for transport) from the computing device of a requesting user via user input utilizing the service application.
- the network computer can further receive or determine a current location or data indicating a rendezvous or start location from the requesting user's computing device (e.g., utilizing location-based resources of the computing device).
- the network computer system can compute an upfront cost for the service for the requesting user (e.g., in the context of transport services, the cost to transport the requesting user from a start location to a destination location), and cause a set of graphic features to be displayed on a user interface of the requesting user's computing device, including features corresponding to or indicating at least the upfront cost for a corresponding service option.
- each of the set of graphic features is selectable to request the on-demand service for the corresponding service option.
- the network computer system can further manage a database of service provider profiles that indicate the qualified service types for each service provider.
- a service provider e.g., a driver
- the service provider may operate a standard vehicle and can be qualified to provide carpooling and standard ride-sharing services.
- the service provider may be a certified professional service provider and may provide a “black car” service.
- the service provider may own a luxury car and further provide a luxury vehicle service.
- the service provider's vehicle may qualify the service provider to provide a high capacity vehicle service (e.g., a sport utility vehicle or van service), or a luxury high capacity vehicle service.
- the service provider may be multi-lingual, and the service app may provide a graphic feature that enables a requesting user to request that the service provider speak a particular language.
- the service provider's vehicle can include certain features that qualify the service provider to provide additional services, such as a bike rack, disabled person services (e.g., a wheel chair lift), or the service provider may be certified in disability etiquette and/or assistance.
- the network computer system can store such information in the service provider's profile in order to filter candidate service providers within proximity of a requesting user in the selection process of fulfilling a service request.
- the network computer system can receive location data indicating the current locations of service providers operating throughout the given region. As described herein, the network computer system can filter the service providers operating within proximity of a requesting user (e.g., based on the closest twenty or thirty service providers, or a specified set of service providers per service option). In addition to calculating an upfront cost for each service option, the network computer system can further determine an estimated time of departure from the user's current location and/or an estimate time of completion of the service(e.g., an estimated time to drop off the requesting user at a destination using a standard service option or a carpooling service option). The displayed graphic features can be categorized in terms of cost, estimated departure time from a rendezvous point, estimated time of completion, and/or service option.
- the graphic features can be displayed under categories comprising an economy category including lower cost service options, a premium category including higher cost service option, a high-capacity category if the requesting user requires a large vehicle, and/or a specialized category for specialized requests (e.g., a bike rack, disability features, language requests, etc.).
- the network computer system can selectively provide information for each graphic feature representing each service option.
- a graphic feature can be selected to enable and/or configure one or more additional features on the user interface.
- This user selection can comprise a specific user input on the graphic feature that causes background data and subsequent screens to be updated in accordance with service data corresponding to the selected graphic feature.
- a selection of a graphic feature representing a carpooling service can configure any subsequent information and screens to be prepopulated or otherwise correlated with data corresponding to the carpooling service (e.g., pricing information, estimated rendezvous time data, etc.).
- a user selection of a graphic feature can cause the selection of a configuration feature to be updated to reflect the selected service option.
- a user selection of the configuration feature can cause the network computer system (or service application executing on the computing device of the requesting user) to generate a configuration interface that enables the requesting user to configure various aspects of the service option.
- Example configurations for an on-demand transport service can include a requested number of available seats, Wi-Fi access, a car seat for a baby, audio or video configurations (e.g., a preferred radio station or video broadcast channel), a specified departure time, virtual reality or augmented reality features, and the like.
- the network computer system can update the upfront cost of the service option on the graphic feature for the configured service option.
- the user settings on the configuration interface can act as a filter for the network computer system in filtering service options and/or individual service providers.
- the computing device of the requesting user can transmit, over one or more networks, data corresponding to a service request to the (backend) network computer system.
- the service request can include at least a service location and/or a destination location.
- the user interface of the service application can utilize a destination-first approach to submitting a service request that enables the upfront cost calculations per service option.
- the network computer system can select and invite an optimal service provider to fulfill the service request, and transmit a confirmation to the computing device of the requesting user indicating that the selected service provider is en route to the rendezvous location (e.g., traveling to a pick-up location).
- the examples described herein achieve a technical effect of providing users of an on-demand service with greater upfront data (e.g., updated pricing information for each service option of the on-demand service) for making service selections, enabling service configuration according to user needs (e.g., selecting a number of seats), providing greater selection in carpooling services, and improving the overall user experience and understandability of the on-demand service.
- greater upfront data e.g., updated pricing information for each service option of the on-demand service
- a computing device refers to devices corresponding to desktop computers, cellular devices or smartphones, personal digital assistants (PDAs), laptop computers, virtual reality (VR) or augmented reality (AR) headsets, tablet devices, television (IP Television), etc., that can provide network connectivity and processing resources for communicating with the system over a network.
- PDAs personal digital assistants
- VR virtual reality
- AR augmented reality
- a computing device can also correspond to custom hardware, in-vehicle devices, or on-board computers, etc.
- the computing device can also operate a designated application configured to communicate with the network service.
- One or more examples described herein provide that methods, techniques, and actions performed by a computing device are performed programmatically, or as a computer-implemented method.
- Programmatically means through the use of code or computer-executable instructions. These instructions can be stored in one or more memory resources of the computing device.
- a programmatically performed step may or may not be automatic.
- a programmatic module, engine, or component can include a program, a sub-routine, a portion of a program, or a software component or a hardware component capable of performing one or more stated tasks or functions.
- a module or component can exist on a hardware component independently of other modules or components. Alternatively, a module or component can be a shared element or process of other modules, programs or machines.
- computing devices including processing and memory resources.
- one or more examples described herein may be implemented, in whole or in part, on computing devices such as servers, desktop computers, cellular or smartphones, personal digital assistants (e.g., PDAs), laptop computers, VR or AR devices, printers, digital picture frames, network equipment (e.g., routers) and tablet devices.
- PDAs personal digital assistants
- VR or AR devices printers
- digital picture frames e.g., routers
- Memory, processing, and network resources may all be used in connection with the establishment, use, or performance of any example described herein (including with the performance of any method or with the implementation of any system).
- one or more examples described herein may be implemented through the use of instructions that are executable by one or more processors. These instructions may be carried on a computer-readable medium.
- Machines shown or described with figures below provide examples of processing resources and computer-readable mediums on which instructions for implementing examples disclosed herein can be carried and/or executed.
- the numerous machines shown with examples of the invention include processors and various forms of memory for holding data and instructions.
- Examples of computer-readable mediums include permanent memory storage devices, such as hard drives on personal computers or servers.
- Other examples of computer storage mediums include portable storage units, such as CD or DVD units, flash memory (such as carried on smartphones, multifunctional devices or tablets), and magnetic memory.
- Computers, terminals, network enabled devices are all examples of machines and devices that utilize processors, memory, and instructions stored on computer-readable mediums. Additionally, examples may be implemented in the form of computer-programs, or a computer usable carrier medium capable of carrying such a program.
- AVs or SDVs refer to vehicles that operate or can be operated in a state of automation with respect to steering, propulsion, and/or braking.
- Some vehicles may include human-based controls (e.g., a steering wheel, gear shifter, brake pedal, and accelerator pedal), and can be switch between a fully autonomous mode, partial autonomous mode, and/or manual control mode.
- human-based controls e.g., a steering wheel, gear shifter, brake pedal, and accelerator pedal
- AVs or SDVs can operate on public roads without any human assistance utilizing a sensor suite and data processing systems to provide an awareness of the AV's or SDV's situational environment.
- the AV or SDV can operate its control mechanisms to safely control and maneuver through various road and traffic infrastructures typical of both urban and rural transportation environments.
- FIG. 1 is a block diagram illustrating an example network computer system in communication with computing devices of requesting users and service providers, in accordance with examples described herein.
- the network computer system 100 can manage an on-demand network-based service that connects requesting users 174 with service providers 184 that are available to provide services to the users 174 .
- the on-demand network-based service can provide a platform that enables ride sharing services between requesting users 174 and available service providers 184 by way of a service application 175 executing on the computing devices 170 of the requesting users 174 , and a service provider application 185 executing on the computing devices 180 of service providers 184 .
- a requesting user's computing device 170 and a service provider's computing device 180 can comprise computing devices with functionality to execute a designated application corresponding to the on-demand service managed by the network computer system 100 .
- the requesting user's computing device 170 and the service provider's computing device 180 can comprise mobile computing devices, such as smartphones, tablet computers, VR or AR headsets, on-board computing systems of vehicles, personal computers, laptops, wearable computing devices, and the like.
- the network computer system 100 can include an application interface 125 to communicate with requester devices 170 over one or more networks 160 via the service application 175 .
- a requesting user 174 wishing to utilize the network service can launch the service application 175 and transmit a service request 171 over the network 160 to the network computer system 100 .
- the requesting user 174 can view multiple different service options managed by the network computer system 100 .
- the service options can include a ride-pooling service, a standard ride share service, a luxury vehicle service, a high-capacity van or large vehicle service, a professional driver service (e.g., where the service provider is certified), a self-driving vehicle transport service, other specialized ride services, and the like.
- the network computer system 100 can utilize the service provider locations 113 to provide the requester devices 170 with ETA data 164 of proximate service providers for each respective service option.
- the service application 175 can enable the requesting user 174 to view information corresponding to each service option.
- the content shown on the user interface 152 of the service application 175 can be updated by way of a content engine 120 and pricing engine 150 of the network computer system 100 , and can comprise a number of graphic features that correspond to each service option providing the requesting user 174 with detailed information to facilitate in making a service option selection.
- the user can interact with the user interface 152 of the service app 175 to select a particular service option and transmit a service request 171 to the network computer system 100 .
- the service request 171 can include a rendezvous location within a given region (e.g., a metropolitan area managed by one or more datacenters corresponding to the network computer system 100 ) in which a matched service provider is to rendezvous with the requesting user 174 .
- the rendezvous location can be inputted by the user by setting a location pin on a user interface of the service app 175 , or can be determined by a current location of the requesting user 174 (e.g., utilizing location-based resources of the requester device 170 ).
- the requesting user 174 can further input a service completion location (e.g., a destination) during or after submitting the service request 171 .
- the user interface 152 of the service application 175 can query the requesting user 174 for a service completion location, or otherwise provide input features on the user interface 152 to receive data indicating a desired completion location 172 .
- the pricing engine 150 can perform dynamic cost computations based on service provider supply and provider locations 113 , the requester's location 173 , and/or the service completion location 172 inputted by the requesting user 174 .
- the pricing engine 150 can perform pricing calculations according to a set formula or algorithm for each specified service option, and provide price data 153 to the content engine 120 to enable the content engine 120 to provide content updates 123 to the requester device 170 .
- the content updates 123 can comprise graphic features indicating ETA data 164 corresponding to an ETA of a representative service provider for each service option. Additionally or alternatively, the content updates 123 can include selectable graphic features providing pricing information for each service option (e.g., an estimated or guaranteed upfront price to transport the user 174 to an inputted destination).
- the network computer system 100 can include a database 140 storing requester profiles 144 and/or service provider profiles 142 .
- the database 140 can be accessible by the pricing engine 150 to, for example, determine the service option qualifications of the service providers 184 by performing lookups 157 in the service provider profiles 142 .
- the service provider profile 142 for a particular service provider can include identifying information, such as vehicle information (e.g., vehicle model, year, license plate number, and color), the service provider's overall rating, qualified service options (e.g., professional service provider, certified assistance service provider, etc.), experience, earnings, and the like.
- the service provider profile 142 can further include the service provider's preferences, such as preferred service areas, routes, hours of operation, and the like.
- the pricing engine 150 can correlate the service provider locations 113 of a group of service providers 184 —within proximity to the current location 173 of the requesting user 174 —with the profile data 149 for those service providers 184 to determine one or more service options that each of the service providers 184 can provide for the requesting user 174 .
- the pricing engine 150 can provide upfront pricing data 153 to the content engine 120 indicating a current upfront cost for each of the service options.
- the service options can comprise one or more carpooling service options, a standard ride-sharing service option (e.g., a normal car and operator), premium ride-sharing service options (e.g., black car, luxury vehicle, high capacity, luxury high-capacity, and/or professional driver services), and can further include any number of specialized service request features, such as disability vehicle features and/or assistance, baby or toddler seat, bike rack, pick-up truck, roof racks, audio and/or video configurations, Wi-Fi access requests, and the like.
- a standard ride-sharing service option e.g., a normal car and operator
- premium ride-sharing service options e.g., black car, luxury vehicle, high capacity, luxury high-capacity, and/or professional driver services
- any number of specialized service request features such as disability vehicle features and/or assistance, baby or toddler seat, bike rack, pick-up truck, roof racks
- Such service options and available configuration request features can be indicated in the profile data 149 of the service provider profiles 142 .
- the pricing engine 150 can further utilize the service provider locations 113 and profile data 149 for those service providers to factor in a supply and demand calculation to determine the price data 153 for each service option, or for selected service options (e.g., carpooling).
- the pricing engine 150 can perform certain optimization operations to identify opportunities in which cost and or ETA can be reduced.
- the pricing engine 150 can utilize map data 137 from a mapping engine 135 to identify the specific routes and directions of travel for each service provider 184 (or for a certain class of service providers, such as carpool service providers), and determine one or more rendezvous points that require the requesting user 174 to walk a certain distance, but would decrease at least one of ETA or cost.
- the pricing engine 150 can provide the content engine 120 with price data 153 and service option information so that the content engine 120 can generate a dedicated graphic feature that includes the reduced price and an indicator that the requesting user 174 must walk or travel a certain distance.
- a user input 179 selecting of this dedicated graphic feature can cause the content engine 120 to provide mapping content showing the rendezvous point(s) and walking directions to the rendezvous point(s).
- the user interface 152 can enable the requesting user 174 to configure a number of features or parameters of a selected service option.
- the user interface 152 can include a configuration feature selectable to cause a configuration interface to be displayed on the requester device 170 .
- the requesting user 174 can provide service configuration inputs 177 to make certain requests described herein (e.g., a requested number of seats for a carpooling service).
- the service configuration inputs 177 provided by the requesting user 174 can cause the price data 153 for the selected service option to change.
- the content engine 120 can provide configuration data 121 to the pricing engine 150 , which can recalculate the price data 153 for the selected service option based on the configuration inputs 177 .
- the recalculated price data 153 can be submitted to the content engine 120 , which can provide a content update 123 to the requester device 170 to display the updated price.
- the updated price data 153 can be provided to the requesting user 174 in response to a user input on a selection feature (e.g., a “done” icon) once all configurations are inputted.
- the updated price data 153 can be provided dynamically to the requesting user 174 as each configuration is inputted.
- the requesting user 174 can view a dynamically updated cost for the ride while inputting the service configurations 177 in real time.
- the user interface 152 can provide the requesting user 174 with a set of tolerance options that can result in a lower service cost.
- the service application 175 can generate a tolerance interface enabling the requesting user 174 to set a number of tolerance parameters, such as flexible rendezvous time, flexible drop-off time, flexible service location (e.g., causing the requesting user 174 to walk beyond a threshold relative distance, such as more than hundred meters), flexible ride time (e.g., for carpooling services that can make additional stops), and the like.
- Each tolerance parameter set by the requesting user 174 can affect the price data 153 .
- the content engine 120 can provide the service configuration data 121 —corresponding to the tolerance parameters set by the user 174 —to the pricing engine 150 which can recalculate the price data 153 for the selected service option accordingly.
- the pricing engine 150 can identify the supply conditions for certain ride service option (e.g., the number and relative directions of travel of ride-pool service providers 184 ) to preemptively provide updated price data 153 for certain tolerance parameters.
- the pricing engine 150 can provide a price data 153 for each tolerance parameter on the tolerance interface that enables the requesting user 174 to view price data 153 prior to the requesting user 174 setting any of the tolerance parameters.
- such price data 153 for each selectable tolerance parameter can be an upfront guaranteed price or can include an estimated of cost savings for the selected service option.
- the pricing engine 150 can dynamically calculate price data 153 updates in response to configuration inputs 177 on the tolerance interface.
- the content engine 120 can dynamically update the user interface 152 to display the updated price information 153 based on the configuration inputs 177 on the tolerance interface.
- the network computer system 100 can further include a selection engine 130 to process the service requests 171 in order to ultimately select from a pool of service providers 184 operating throughout the given region to service the service requests 171 .
- the network computer system 100 can include a service provider interface 115 to communicate with the service provider devices 180 via the service provider application 185 .
- the service provider devices 180 can transmit their current locations using location-based resources of the service provider devices 180 (e.g., GPS resources). These service provider locations 113 can be utilized by the selection engine 130 to identify a set of candidate service providers 184 , in relation to the service location, that can service the service request 171 .
- the database 140 can further be accessible by the selection engine 130 in matching a candidate service provider with a requesting user 174 .
- the requesting user 174 can preconfigure the requester profile 144 with certain preferences (e.g., preferred service options) and requirements (e.g., disability assistance), and can provide ratings for service providers 184 that have provided transportation to the requesting user 174 .
- other information can be provided by the requesting user 174 , such as comments and complaints, which can be utilized by the network computer system 100 in maintaining and updating the requesting user's 174 requester profile 144 .
- Historical data corresponding to the requesting user's 174 utilization of the on-demand service can also be analyzed to independently determine certain inclinations or preferences of the requesting user 174 .
- the historical data can indicate a rate of usage (e.g., once per week), common destinations and service locations, and favored service options.
- the selection engine 130 can utilize the user information in the requester profile 144 of the requesting user 174 upon receiving a service request 171 , in order to determine an optimal service provider 189 from the candidate set of service providers 184 .
- the selection engine 130 can further utilize service provider information 149 from the service provider profiles 142 in order to determine an optimal service provider 189 to fulfill or complete a particular service request 171 .
- the user 174 can select a request feature on the service app 175 that causes the requester device 170 to generate and transmit a service request 171 to the network computer system 100 .
- the selection engine 130 can initially filter service providers based on the requested service option by the requesting user 174 to identify a set of candidate service providers 184 to fulfill the service request 171 .
- the selection engine 130 can further filter the candidate set of service providers 184 by utilizing the profile data 149 for each of the candidate set of service providers 184 , as well as the current locations, distances from the service location, and/or respective ETAs to the service location.
- the selection engine 130 can determine an optimal service provider 189 from the candidate set of service providers 184 , and transmit a service invitation 132 to that service provider 189 to fulfill the service request 171 .
- the network computer system 100 can also select a proximate self-driving vehicle (SDV) to fulfill the service request 171 .
- SDV self-driving vehicle
- the pool of proximate candidate service providers in relation to a service location can also include one or more SDVs operating throughout the given region.
- the network computer system 100 can include a mapping engine 135 , or can utilize a third-party mapping service, to generate map data 137 and or traffic data 139 in the environment surrounding the service location.
- the selection engine 130 can utilize the current locations 113 of the service providers 184 , the map data 137 , and/or the traffic data 139 in order to select the optimal service provider 189 to service the service request 171 .
- the optimal service provider 189 can be a service provider that is closest to the requesting user 174 or the service location with respect to distance or time, or can be a proximate service provider that is optimal for other reasons, such as the service provider's experience, the amount of time the service provider has been on the clock, the service provider's current earnings, and the like.
- the selection engine 130 can receive the service configuration inputs 177 corresponding to user inputs 179 on the configuration interface and/or tolerance interface of the service application 175 .
- the selection engine 130 can utilize the configuration inputs 177 —as well as the selected service option—to filter the candidate set of service providers 184 .
- the resultant filtered set can comprise service providers that satisfy the selected ride service option, and each of the specialized configuration requests and/or tolerance parameters configured by the requesting user 174 .
- the selection engine 130 can then determine an optimal service provider 189 from the filtered set of service providers to fulfill the service request 171 .
- the optimal service provider 189 may be selected based on having a shortest distance and/or time to the service location, or may be selected based on other factors, such as localized service provider supply in the present area, proximate areas, and other valuation metrics.
- the selection engine 130 can generate a service invitation 132 to service the service request 171 , and transmit the service invitation 132 to the optimal service provider 189 via the service provider application 185 executing on the optimal service provider's computing device 180 .
- the optimal service provider 189 can either accept or reject the invitation 132 . Rejection of the invitation 132 can cause the selection engine 130 to determine another optimal service provider from the candidate set of service providers 184 to service the service request 171 , or can cause the selection engine 130 to determine a new set of candidate service providers from which to select another service provider.
- the optimal service provider 189 accepts (e.g., via an acceptance input)
- the acceptance input 181 can be transmitted back to the selection engine 130 , which can generate and transmit a confirmation 134 of the optimal service provider 189 to the requesting user 174 via the service application 175 executing on the requesting user's 174 computing device 170 .
- the content engine 120 can manage the manner in which content is displayed on the requester devices 170 and/or the service provider devices 180 .
- the content engine 120 can provide content updates 123 based on user inputs 179 on the user interface 152 generated by the service application 175 .
- a user selection on a content feature of the service app 175 can cause the content engine 120 to generate a new screen on the service app 175 , or cause a current screen to pivot between certain displayed features.
- the content engine 120 can access a local database that includes user interface elements to provide the content updates 123 to the requester devices 170 in response to the user inputs 179 .
- the user interface elements can comprise any number of screens with any number of selectable features, displayed information, input boxes, and/or spatial elements that can provide third party content from third party applications (e.g., news content, social media content, etc.). Furthermore, the user interface elements can include preconfigured features that enable the requester device 170 to enhance user experience.
- the content engine 120 can receive the requester location 173 of a requesting user 174 and input the requester location 173 onto map data 137 from the mapping engine 135 .
- the map data 137 can further include service provider locations 113 of available service providers proximate to the requesting user 174 .
- the content engine 120 can provide map content 124 to the requester device 170 of the requesting user 174 via the service application 175 .
- the content engine 120 can include virtual representations of proximate available service providers that can be filtered based on service option, as described herein.
- the map content 124 can be displayed on the user interface 152 to include information corresponding to a requested service option, such as ETA data 164 for the optimal service provider 189 to arrive at the rendezvous location, an estimated walk time for the requesting user 174 between a current location and the service location, and a total completion time for the service (e.g., a total ETA for transporting the requesting user 174 to an inputted destination).
- a requested service option such as ETA data 164 for the optimal service provider 189 to arrive at the rendezvous location, an estimated walk time for the requesting user 174 between a current location and the service location, and a total completion time for the service (e.g., a total ETA for transporting the requesting user 174 to an inputted destination).
- FIG. 2 is a block diagram illustrating an example computing device of a requesting user (i.e., a “requester device” 200 ) executing a designated service application for an on-demand network-based service, as described herein.
- the requester device 200 can comprise a mobile computing device, such as a smartphone, tablet computer, laptop computer, VR or AR headset device, and the like.
- the requester device 200 can include typical telephony features such as a microphone 245 , a camera 250 , and a communication interface 210 to communicate with external entities using any type of wireless communication protocol.
- the requester device 200 can store a designated application (e.g., a service app 232 ) in a local memory 230 .
- the service app 232 can be executed by one or more processors 240 , which can cause an app interface 242 to be generated on a display screen 220 of the requester device 200 .
- the app interface 242 can enable the user to, for example, check current price levels and availability for various service options of the on-demand service.
- the app interface 242 can further enable the user to via information corresponding to the multiple service options, and select from the multiple service options, such as a carpooling service option, a regular ride-sharing service option, a professional ride service option, a van transport service option, a luxurious ride service option, and the like.
- the user can generate a service request 267 via user inputs 218 provided on the app interface 242 .
- the user can provide user inputs 218 on the app interface 242 , which can be processed by the processor(s) 240 and/or the network computer system 290 over the network(s) 280 to provide content updates 244 , as described herein with respect to the user interface examples shown in FIGS. 3 A and 3 B , and FIGS. 4 A through 4 I .
- the service application 232 can enable a communication link with a network computer system 290 over the network 280 , such as the network computer system 100 as shown and described with respect to FIG. 1 .
- the user can input a service completion location (e.g., a destination) and/or a rendezvous location (e.g., a pick-up location), select a service option, configure the selected service option, and/or set any number of tolerance parameters.
- a service completion location e.g., a destination
- a rendezvous location e.g., a pick-up location
- select a service option configure the selected service option, and/or set any number of tolerance parameters.
- the app interface 242 can provide upfront information about each available service option, such as price data 292 , an estimated time of arrival at the service location or destination, and the like.
- the requester device 200 can transmit input data 228 —corresponding to the user inputs 218 on the app interface 242 —to the network computer system 290 that affects the price calculations of certain service options.
- the input data 228 can be processed by the network computer system 290 (e.g., by the pricing engine 150 shown in FIG. 1 ) to provide updated price data 296 for display on the application interface 242 .
- the price data 296 can be updated for each service option, which can be represented by selectable graphic features on the application interface 242 that enable the user to request the service option of the on-demand network-based service.
- the processor(s) 240 can transmit the service request 267 via the communications interface 210 to the backend network computer system 290 over a network 280 .
- the requester device 200 can receive a confirmation 269 from the network computer system 290 indicating the selected service provider and vehicle that will fulfill the service request 267 and rendezvous with the user at the rendezvous point.
- the requester device 200 can further include a GPS module 260 , which can provide location data 262 indicating the current location of the requesting user to the network computer system 290 to, for example, establish the rendezvous point and/or select an optimal service provider or autonomous vehicle to fulfill the service request 267 .
- one or more processes described in connection with the network computer system 100 of FIG. 1 can be performed by the processor(s) 240 of the requester device 200 executing the service application 232 .
- certain content updates 244 for the app interface 242 can be generated by the processor(s) 240 as opposed to the content engine 120 as shown and described with respect to FIG. 1 .
- the content updates 244 corresponding to certain service application 232 screens and interface can be generated by the processor(s) 240 of the requester device 200 via execution of the service application 232 .
- FIGS. 3 A and 3 B illustrate example user interfaces on a requester device, according to examples described herein.
- execution of the service application 232 on the requester device 200 can cause an app interface 301 to be generated on the display screen 220 .
- the app interface 301 can comprise an initial home screen 300 , and can feature such elements as a destination input box 303 , a location feature 305 indicating the user's current location, and virtual representations of proximate available service providers 307 .
- the features of the home screen 300 can overlay or be included with map content 309 of the surrounding area of the user.
- the home screen 300 can include a set of destination accelerator features 308 that the user can select to automatically configure a service request using a single selection input, or eliminating one or more additional steps in a normal request process.
- the network computer system 290 can determine common or routine destinations for the user in connection with an on-demand transport service, such as the user's home, place of work, a child care facility or a gym. The network computer system 290 can further determine a routine ride type that the user utilizes when going to such locations.
- selection of a destination accelerator feature 308 can automatically preconfigure a pick-up request via automated destination input and ride service selection, and can utilize the user's current location to establish a pick-up location.
- FIG. 3 B illustrates an optional category selection screen 311 that enables the user to select from any number of ride service categories 312 .
- the category selection screen 311 can enable the user to filter the ride service options via an initial input selecting a particular category.
- selection of the “economy” feature can cause only carpooling, standard ride sharing, and high capacity ride service options to be selected.
- the requester device 200 can display a ride service selection interface, as shown in FIGS. 4 A through 4 D .
- the ride service selection interface can include map content indicating a current location of the user and a window displaying the graphic features 408 corresponding to the ride service options 405 .
- the user can select or make a selection of a particular ride service option 405 and select a request feature 410 to request a ride.
- each of the ride service options 405 can be displayed with an upfront price 402 indicating a cost for the service to transport the user to the inputted destination.
- the graphic features 408 can also show an estimated arrival time or an estimated time to destination (ETD) 403 from the service location for each particular ride service option 405 .
- the ride service selection interface can also display an estimated time for pickup by a service provider or an estimated departure time (EDT) feature 401 indicating an estimated shortest pick-up time for a selected ride service option, or a more general EDT for all the ride service options 405 .
- EDT estimated departure time
- each of the ride service options 405 can be organized on the interface according to service categories 404 .
- a window portion displaying the service categories 404 and the graphic features 408 can be scrollable (e.g., laterally scrollable as shown) to reveal additional ride service options 405 in additional service categories 404 .
- the user has selected a carpooling service option, and can input the request feature 410 to lock in the displayed price and transmit a service request to the network computer system 290 .
- the user has selected the standard ride-sharing service (e.g., personalized service provider and vehicle with no additional passengers), and can select the request feature 410 to request the selected service at the displayed price.
- the user has scrolled to the premium categories and selected a black car service option.
- selection of a non-pooling service option can also cause the service application 232 to display a proposed route 416 to the destination.
- the ride service selection interface include a configuration feature 412 that is selectable to generate a configuration interface as shown in FIG. 4 G .
- the user has scrolled further to display a set of specialized service options 414 on the ride service selection interface.
- the specialized service options 414 can include certain disability assistance services or language requests.
- the service application 232 can also suggest alternative pick-up points 422 , as shown in FIG. 4 E .
- These service locations 422 can be mandated by local rules and regulations (e.g., airport rules), or may result from an optimization calculation by the service application 232 or the network computer system 290 to reduce wait time and/or cost.
- each of the alternative pick-up points 422 can be selectable on map content (as shown in FIG. 4 E ).
- User selection of a particular alternative pick-up point can, for example, cause additional information to be displayed (e.g., price update information), or can input the selected location as the rendezvous point for the user and service provider.
- FIG. 4 F shows a selection 426 of a carpooling graphic feature. Also shown in FIG. 4 F is a walk/rendezvous feature 427 that offers the user a less expensive option, but may require longer waiting time and/or the user walking or traveling a certain distance. In one example, selection of the walk/rendezvous feature 427 can cause the map content showing an alternate pick-up point 422 to be displayed.
- the network computer system 290 can utilize carpooling routes and additional trip data (e.g., available seats in carpool service providers' vehicles) to perform an optimization operation, which can comprise a cost, time, and/or walking distance optimization to converge on a particular combination of price, walking distance to a service location, and wait time—in addition to improving high level ride service flows of the service providers through traffic.
- the walk/rendezvous feature 427 can represent a ride-pooling service with the foregoing optimization, and can be selectable to request the optimized carpooling service.
- the walk/rendezvous feature 427 can further cause a tolerance interface to be displayed (not shown) that enables the user to specify certain tolerance parameters that can further affect the price, pick-up time, and/or ride time.
- the tolerance parameters inputted by the user can be factored into the optimization operation in order to provide the information shown in connection with the walk/rendezvous feature 427 (e.g., price, ETD, walking distance, and the like).
- selection of either the walk/rendezvous feature 427 or the standard carpooling feature can switch from the proposed route 416 shown in FIG. 4 C , to a Haversine route 424 as shown in FIG. 4 F .
- selection of the other ride service options i.e., personalized ride services
- the switch between proposed route 416 and Haversine route 424 can be due to the actual route being unknown or calculated on the fly for carpooling services.
- the service application 232 can display a carpooling route and the specified stops (i.e., pick-up and/or drop-off location) along the route.
- FIG. 4 F also shows a number of passengers 428 or requested seats for the selected ride service option.
- the number of passengers feature 428 can be displayed when the user selects a carpooling service.
- the number of passengers feature 428 can be persistently displayed.
- the service application 232 can further display a configuration feature 429 that the user can selection to cause the configuration interface 430 to be displayed, as shown in FIG. 4 G .
- the configuration interface 430 enables the user to configure various aspects of the ride, and can allow the user to make additional requests, such as a number of seats, a baby or toddle car seat, music or other audio or video configurations, Wi-Fi access, and the like.
- the user has requested accessibility for two passengers and a baby car seat for the ride.
- the network computer system 290 and/or service application 232 can display an updated ride selection interface showing updates corresponding to the user configurations.
- the updated ride selection interface can display the updated price 432 based on the user configurations, the special request 434 (e.g., a baby car seat), and the required number of passengers 436 . If the user is satisfied with the configurations and updated price 432 , the user can select the request feature 438 to cause a pick-up request to be transmitted to the network computer system 290 , which can select an optimal driver satisfying the ride service option, user configurations, and/or tolerance parameters to service the requested ride.
- FIG. 4 I illustrates an “en route” screen 440 generated once a pick-up request has been submitted and a servicing driver 446 has been selected.
- the en route screen 440 can be generated as a subsequent screen in response to a driver being selected to service a pick-up request.
- the en route screen 440 can include a pick-up location 444 as well as the user's current location, and estimated time of arrival information 442 for the servicing driver 446 .
- the en route screen 440 can further include driver information 448 such as the servicing driver's 446 name, vehicle type, and license plate number.
- the various features of the en route screen can also overlay or be included with map content.
- FIGS. 5 and 6 reference may be made to reference characters representing like features as shown and described with respect to FIGS. 1 through 4 I . Furthermore, the processes described with respect to FIGS. 5 and 6 below may be performed by an example network computer system 100 , 290 , a requester device 170 , 200 executing a service application 175 , 232 or a combination of the requester device 170 , 200 executing the service application 175 , 232 and the network computer system 100 , 290 described herein.
- FIG. 5 is a flow chart describing an example method of providing upfront data to facilitate service provider selection in connection with an on-demand network-based service, according to examples described herein.
- the network computer system 100 can receive data indicating a service completion location 172 from a requester device executing a designated service application 175 for an on-demand service managed by the network computer system 100 ( 500 ).
- the network computer system can further determine the current location 173 of the requester device 170 (e.g., via location-based resources of the requester device 170 ) ( 505 ).
- the network computer system 100 can determine service provider locations 113 throughout the given region for each of a plurality of service options, described herein ( 510 ).
- the network computer system 100 can compute an upfront price for each service option ( 515 ).
- the network computer system 100 can then generated graphic features 408 for display on a user interface 152 of the requester device 170 for each service option ( 520 )
- each graphic feature 408 can include an upfront cost 402 for a requested service for that particular service option ( 524 ).
- one or more of the graphic features 408 can include an estimated time to destination (ETD) 403 corresponding to a time of completion for the selected service between the user 174 and a representative service provider for the service option at the rendezvous location ( 522 ).
- ETD estimated time to destination
- the network computer system 100 can receive a service request 171 indicating a service option selection ( 525 ). The network computer system 100 may then select an available or optimal service provider 189 qualified for the selected service option to fulfill the service request 171 ( 530 ).
- FIG. 6 is another flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein.
- the network computer system 100 can manage an on-demand service for a given region ( 600 ). In doing so, the network computer system 100 can match available service providers 184 with requesting users 174 , providing a variety of service options at a corresponding variety of cost metrics.
- the network computer system 100 may provide a user interface 152 for the on-demand service for display on the requester devices 170 (e.g., via execution of a service application 175 ) ( 605 ).
- the user interface 152 can provide map content 124 enabling the user to view a surrounding area and the service environment, such as graphic representations of available service providers 184 operating within proximity of the user, and/or dedicated graphic representations of service providers representing the various service options ( 607 ). Additionally or alternatively, the user interface 152 can further display a number of request features that enables the requesting user 174 to transmit a service request 171 to the network computer system 100 ( 609 ).
- the request features can include a service completion location (or destination) input box 303 that enables the user 174 to type a destination 172 , or can include a voice feature that enables the user to speak a destination 172 .
- the user interface 152 can display a home screen that includes a number of accelerator features 308 that enable the user to automatically configure a service request 171 with predetermined completion locations 172 and/or ride service options—cutting down on request steps.
- the request features can further enable the requesting user 174 to input a rendezvous location, for example, by setting a location pin or typing or voicing a rendezvous location.
- the request features can include a number of graphic features 408 indicating specified service options with information for each service option (e.g., price data and ETD data).
- the network computer system 100 can receive data indicating a service completion location from the requesting user 174 ( 610 ). Such information can be received over one or more networks established via execution of the service application 175 on the requesting user's computing device 170 . The network computer system 100 can further determine the current location of the user 174 , for example, via location-based resources of the requester device 170 ( 615 ). The network computer system 100 may then compute an upfront price 402 for each available service option ( 620 ).
- the computation of the upfront price 402 can be performed by the network computer system 100 automatically without inquiry by the requesting user 174 using only limited information, such as the rendezvous location or current location 173 of the user 174 and the service completion location 172 ( 632 ), and/or the supply of service providers 184 for each service option ( 634 ).
- the price computation for each service option can be performed as a background, dynamic process and can be continuously or periodically updated on graphic features 408 displayed on the requester device 170 (e.g., once every ten seconds).
- individual computations may be performed for each service option, such as one or more carpooling services ( 622 ), a standard ride-sharing service ( 624 ), one or more specialized services (e.g., disabled access, high capacity vehicles, bike rack, roof rack, foreign language, and the like) ( 630 ), a professional driver service ( 628 ), and/or a luxury or premium vehicle service ( 626 ).
- the network computer system 100 can receive the service provider locations 113 (e.g., via location-based or GPS resources of the service provider devices 180 ) to determine an ETD 403 for at least one of the service options.
- the network computer system 100 can calculate the ETD 403 for a specified service option by utilizing one or more representative service providers for that service option.
- the ETD 403 can be an actual ETD 403 for a single representative service provider, or can be an averaged ETD 403 based on the locations of multiple service providers for that service option, routing information, and/or current or expected traffic information 139 .
- the network computer system 100 can further generate graphic features 408 for each service option to be displayed on the user interface 152 of the requester device 170 ( 635 ).
- each graphic feature 408 can also indicate the upfront price 402 for the service option ( 637 ), and/or the calculated ETD 403 for the service option ( 639 ).
- the user interface 152 can further provide a selectable configuration feature 412 that enables the user to configure various aspects of the selected service option ( 645 ), such as a number of seats required ( 647 ) and/or additional specialized requests (e.g., Wi-Fi access, audio or video settings, a baby car seat, a bike rack, roof racks, and the like) ( 649 ).
- the network computer system 100 can update the calculated price 402 and/or ETD 403 on the graphic feature 408 based on the user configurations 177 .
- the network computer system 100 can also perform an optimization operation for one or more service options based on tolerance parameters ( 650 ). According to such aspects, the network computer system 100 can perform the optimization operation in response to user inputs of tolerance parameters (e.g., on a tolerance interface of the service application 175 ), or preemptively and independently based on the service provider supply conditions (e.g., number of service providers, service provider routes and locations, etc.). In one example, the network computer system 100 preemptively performs the optimization operation for the carpooling service to provide the user 174 with an additional, lower cost option if the requesting user is, for example, willing to walk a certain distance and/or willing to wait for a relatively longer period of time.
- tolerance parameters e.g., on a tolerance interface of the service application 175
- the service provider supply conditions e.g., number of service providers, service provider routes and locations, etc.
- the network computer system 100 preemptively performs the optimization operation for the carpooling service to provide the user 174 with an additional, lower cost option
- the network computer system 100 can optimize cost for the requesting user 174 ( 652 ). For example, the network computer system 100 can identify service provider routes of carpool service providers, and instead of rerouting a closest available carpooling service provider, the network computer system 100 may identify one or more additional service providers on current routes that will pass close to the current location 173 of the user 174 . The cost calculation for a minor detour of such service providers versus a relatively major detour for a closer service provider may result in an overall lower cost, but higher wait time, for the user 174 . However, examples described herein recognize that a cost optimization alone may result in unreasonable wait times and/or walking distances for the user 174 .
- the network computer system 100 can also perform a wait time optimization ( 653 ) and a walking distance or travel optimization for the user 174 ( 654 ).
- the combination of cost savings, wait time, and walk time optimizations can cause the network computer system 100 to converge on an optimal alternative rendezvous location for the user 174 that is a certain walking distance away from the requesting user's current location 173 , requiring a certain wait time, and saving the user 174 a certain amount in costs.
- the network computer system 100 can generate an additional graphic feature (e.g., the walk/rendezvous feature 427 shown in FIG. 4 F ) displaying an additional service option based on the optimization ( 655 ).
- the additional service option graphic can display an upfront price 402 and/or an ETD 403 for the additional service option (e.g., the walk/rendezvous service option). Furthermore, a user selection of this service option can cause a mapping interface to be displayed indicating a walking route for the requesting user to meet the service provider at the optimal rendezvous location (e.g., for pick-up and transportation to a destination).
- the network computer system 100 may then receive a service request 171 indicating the selected service option ( 660 ).
- the network computer system 100 can filter the available service providers 184 based on the selected ride service option, and select an optimal service provider 189 from the remaining candidate service providers to service the service request 171 ( 665 ).
- the network computer system 100 can further generate and transmit a service invitation 132 to the selected service provider 189 , which the service provider 189 can accept or decline. If the service provider accepts, the network computer system 100 can transmit a confirmation 134 back the user 174 . However, if the selected service provider 189 rejects the invitation 132 , the network computer system 100 can determine a second set of candidates and make another selection of a most optimal service provider from the second candidate set.
- FIG. 7 is a block diagram that illustrates a computer system upon which examples described herein may be implemented.
- a computer system 700 can be implemented on, for example, a server or combination of servers.
- the computer system 700 may be implemented for providing on-demand services.
- the network computer system 100 may be implemented using a computer system 700 such as described by FIG. 7 .
- the network computer system 100 may also be implemented using a combination of multiple computer systems as described in connection with FIG. 7 .
- the computer system 700 includes processing resources 710 , a main memory 720 , a read-only memory (ROM) 730 , a storage device 740 , and a communication interface 750 .
- the computer system 700 includes at least one processor 710 for processing information stored in the main memory 720 , such as provided by a random access memory (RAM) or other dynamic storage device, for storing information and instructions which are executable by the processor 710 .
- the main memory 720 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by the processor 710 .
- the computer system 700 may also include the ROM 730 or other static storage device for storing static information and instructions for the processor 710 .
- a storage device 740 such as a magnetic disk or optical disk, is provided for storing information and instructions.
- the communication interface 750 enables the computer system 700 to communicate with one or more networks 780 (e.g., cellular network) through use of the network link (wireless or wired). Using the network link, the computer system 700 can communicate with one or more computing devices, one or more servers, and/or one or more self-driving vehicles. In accordance with examples, the computer system 700 receives service requests 782 from mobile computing devices of individual users.
- the executable instructions stored in the memory 730 can include selection instructions 722 , which the processor 710 executes to select an optimal service provider to service the service request 782 .
- the computer system can receive service provider locations 784 of service providers operating throughout the given region, and the processor can execute the selection instructions 722 to select an optimal service provider from a set of available service providers, and transmit a service invitation 752 to enable the service provider to accept or decline the service offer.
- the executable instructions stored in the memory 720 can also include cost calculation instructions 724 , which enable the computer system 700 to dynamically compute prices based on an inputted service completion location by the user and a rendezvous location (e.g., based on the user's current location). As described herein, execution of the cost calculation instructions 724 can cause the computer system 700 to output an upfront price for each of a plurality of service options, and can further be based on service provider supply for the service option (e.g., with a shortage of supply resulting in a price surge factor).
- the executable instructions can further include optimization instructions 726 , which enable the computer system 700 to perform cost, wait time, and/or walking distance optimizations (e.g., for a carpooling service option) in order to provide an additional walk/rendezvous service at a reduced cost to the user, as described herein.
- the results of the price calculations, updates, and optimizations can result in content updates 754 provided by the computer system 700 for display on the requester device.
- content updates 754 can comprise the screens, screen features, or update features of the service application executing on the requester device, including the selectable graphic features 408 providing price and ETD information for the service options.
- the instructions and data stored in the memory 720 can be executed by the processor 710 to implement an example network computer system 100 of FIG. 1 .
- the processor 710 can receive service requests 782 and service provider locations 784 , and submit service invitations 752 to facilitate the servicing of the requests 782 .
- execution of the cost calculation instructions 724 and optimization instructions 726 can cause the processor 710 to provide service information for each of the available ride service options managed by the network computer system 100 .
- the processor 710 is configured with software and/or other logic to perform one or more processes, steps and other functions described with implementations, such as described by FIGS. 1 - 6 , and elsewhere in the present application.
- Examples described herein are related to the use of the computer system 700 for implementing the techniques described herein. According to one example, those techniques are performed by the computer system 700 in response to the processor 710 executing one or more sequences of one or more instructions contained in the main memory 720 . Such instructions may be read into the main memory 720 from another machine-readable medium, such as the storage device 740 . Execution of the sequences of instructions contained in the main memory 720 causes the processor 710 to perform the process steps described herein. In alternative implementations, hard-wired circuitry may be used in place of or in combination with software instructions to implement examples described herein. Thus, the examples described are not limited to any specific combination of hardware circuitry and software.
Abstract
A computing system can receive input data and location data from a computing device of a requesting user of the transport service. Based on a destination location as specified by the input data and the current location of the requesting user, the system can determine, for each respective transport option of a plurality of transport options, an upfront cost for transporting the requesting user to the specified destination location using the respective transport option. The system may then transmit update data to the computing device of the requesting user to cause the computing device to automatically update a graphical user interface to include a plurality of interactive graphic features indicating the upfront cost for each respective transport option.
Description
- This application is a continuation of U.S. patent application Ser. No. 16/444,858, filed on Jun. 18, 2019; which is a continuation of U.S. patent application Ser. No. 15/395,406, filed on Dec. 30, 2016, now U.S. Pat. No. 10,425,490, which claims the benefit of priority of U.S. Provisional Patent Application No. 62/399,660, filed Sep. 26, 2016; the aforementioned applications being hereby incorporated by reference in their respective entireties.
- User centric network services typically sequence users through a number of selection interfaces so that the user can specify certain information for a desired type of service, including service level selections and preferences. With enhancements in network and mobile technology, the number of on-demand services for user selection is also increasing, creating inconvenience for human operators. Moreover, the time needed for selection can occupy an interface device, creating performance issues and draining resources of the operative selection device.
- The disclosure herein is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings in which like reference numerals refer to similar elements, and in which:
-
FIG. 1 is a block diagram illustrating an example network computer system in communication with user devices and service provider devices, in accordance with examples described herein; -
FIG. 2 is a block diagram illustrating an example computing device of a requesting user executing a designated service application for an on-demand network-based service, as described herein; -
FIGS. 3A and 3B illustrate example user interfaces on a computing device of a requesting user, according to examples described herein; -
FIGS. 4A, 4B, 4C, 4D, 4E, 4F, 4G, 4H, and 4I illustrate other example user interfaces on a computing device of a requesting user, according to examples described herein; -
FIG. 5 is a flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein; -
FIG. 6 is another flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein; and -
FIG. 7 is a block diagram illustrating a computer system upon which examples described herein may be implemented. - A network computer system is described herein that manages an on-demand network-based service linking available service providers with requesting users throughout a given region (e.g., a metroplex such as the San Francisco Bay Area). In doing so, the network computer system can receive service requests for on-demand services (e.g., a transport service or a delivery service) from requesting users (e.g., a rider) via a designated service application executing on the users' mobile computing devices. Based on a detected location or an inputted location(s) (e.g., a pick-up location and/or destination location), the network computer system can identify a number of proximate service providers (e.g., available drivers) and transmit a service invitation to one or more service provider devices of the proximate service providers to fulfill the service request. In many examples, the service providers can either accept or decline the service invitation based on, for example, a service location being impractical for the service provider.
- In determining an optimal service provider to fulfill or complete a given service request, the network computer system can identify a plurality of candidate service providers to fulfill or complete the service request based on a service location indicated in the service request. As provided herein, an “optimal” service provider corresponds to a service provider, from a candidate set of service providers that has been determined to be most suitable to completing a particular service request based on one or more factors. The factor(s) can comprise the service provider being closest to a rendezvous point with the requesting user, having a lowest estimated time of arrival (ETA) to the rendezvous point, an estimated collective value generated by the service provider in being selected as compared to other service providers, and other factors. In some aspects, the network computer system can identify a set of candidate service providers (e.g., twenty or thirty service providers within a certain proximity of the service location), and select an optimal service provider (e.g., a closest service provider to the rendezvous point, a service provider with the shortest estimated travel time from the rendezvous point, a service provider traveling to a location within a specified distance or specified travel time to an end location, etc.) from the candidate service providers to fulfill or complete the service request based on any of the above factors.
- According to examples provided herein, a computing system is provided that causes a user interface specific to the service application to be generated on a display screen of a computing device of a requesting user. As described herein, the computing system can comprise a backend datacenter or server system(s) (e.g., comprising the network computer system) that hosts the on-demand network-based service. Additionally or alternatively, one or more processes described in connection with the computing system may be performed on the processing resources of the requesting user's mobile computing device via execution of the service application. Thus, the processes described herein can be wholly or partially executed by either the network computer system or the mobile computing device of the requesting user executing the service application.
- In various examples described herein, the network computer system can establish a communication link with the computing device of the requesting user upon execution of the service application, and provide data corresponding to a plurality of service options for the on-demand service. In certain implementations, the network computer system can receive data indicating a service location (e.g., an end point for transport) from the computing device of a requesting user via user input utilizing the service application. The network computer can further receive or determine a current location or data indicating a rendezvous or start location from the requesting user's computing device (e.g., utilizing location-based resources of the computing device). For each of a set of service options, the network computer system can compute an upfront cost for the service for the requesting user (e.g., in the context of transport services, the cost to transport the requesting user from a start location to a destination location), and cause a set of graphic features to be displayed on a user interface of the requesting user's computing device, including features corresponding to or indicating at least the upfront cost for a corresponding service option. According to examples, each of the set of graphic features is selectable to request the on-demand service for the corresponding service option.
- The network computer system can further manage a database of service provider profiles that indicate the qualified service types for each service provider. For example, a service provider (e.g., a driver) may operate a standard vehicle and can be qualified to provide carpooling and standard ride-sharing services. In further examples, the service provider may be a certified professional service provider and may provide a “black car” service. The service provider may own a luxury car and further provide a luxury vehicle service. Still further, the service provider's vehicle may qualify the service provider to provide a high capacity vehicle service (e.g., a sport utility vehicle or van service), or a luxury high capacity vehicle service. The service provider may be multi-lingual, and the service app may provide a graphic feature that enables a requesting user to request that the service provider speak a particular language. The service provider's vehicle can include certain features that qualify the service provider to provide additional services, such as a bike rack, disabled person services (e.g., a wheel chair lift), or the service provider may be certified in disability etiquette and/or assistance. The network computer system can store such information in the service provider's profile in order to filter candidate service providers within proximity of a requesting user in the selection process of fulfilling a service request.
- In various implementations, the network computer system can receive location data indicating the current locations of service providers operating throughout the given region. As described herein, the network computer system can filter the service providers operating within proximity of a requesting user (e.g., based on the closest twenty or thirty service providers, or a specified set of service providers per service option). In addition to calculating an upfront cost for each service option, the network computer system can further determine an estimated time of departure from the user's current location and/or an estimate time of completion of the service(e.g., an estimated time to drop off the requesting user at a destination using a standard service option or a carpooling service option). The displayed graphic features can be categorized in terms of cost, estimated departure time from a rendezvous point, estimated time of completion, and/or service option. For example, the graphic features can be displayed under categories comprising an economy category including lower cost service options, a premium category including higher cost service option, a high-capacity category if the requesting user requires a large vehicle, and/or a specialized category for specialized requests (e.g., a bike rack, disability features, language requests, etc.). The network computer system can selectively provide information for each graphic feature representing each service option.
- As described herein, a graphic feature can be selected to enable and/or configure one or more additional features on the user interface. This user selection can comprise a specific user input on the graphic feature that causes background data and subsequent screens to be updated in accordance with service data corresponding to the selected graphic feature. For example, a selection of a graphic feature representing a carpooling service can configure any subsequent information and screens to be prepopulated or otherwise correlated with data corresponding to the carpooling service (e.g., pricing information, estimated rendezvous time data, etc.). Accordingly, a user selection of a graphic feature can cause the selection of a configuration feature to be updated to reflect the selected service option. Thereafter, a user selection of the configuration feature can cause the network computer system (or service application executing on the computing device of the requesting user) to generate a configuration interface that enables the requesting user to configure various aspects of the service option. Example configurations for an on-demand transport service can include a requested number of available seats, Wi-Fi access, a car seat for a baby, audio or video configurations (e.g., a preferred radio station or video broadcast channel), a specified departure time, virtual reality or augmented reality features, and the like. Based on the user configurations, the network computer system can update the upfront cost of the service option on the graphic feature for the configured service option. In variations, the user settings on the configuration interface can act as a filter for the network computer system in filtering service options and/or individual service providers.
- In response to a user selection of the service request feature, the computing device of the requesting user can transmit, over one or more networks, data corresponding to a service request to the (backend) network computer system. In some aspects, the service request can include at least a service location and/or a destination location. For example, the user interface of the service application can utilize a destination-first approach to submitting a service request that enables the upfront cost calculations per service option. Based on the current location or rendezvous point and selected service option, the network computer system can select and invite an optimal service provider to fulfill the service request, and transmit a confirmation to the computing device of the requesting user indicating that the selected service provider is en route to the rendezvous location (e.g., traveling to a pick-up location).
- Among other benefits, the examples described herein achieve a technical effect of providing users of an on-demand service with greater upfront data (e.g., updated pricing information for each service option of the on-demand service) for making service selections, enabling service configuration according to user needs (e.g., selecting a number of seats), providing greater selection in carpooling services, and improving the overall user experience and understandability of the on-demand service.
- As used herein, a computing device refers to devices corresponding to desktop computers, cellular devices or smartphones, personal digital assistants (PDAs), laptop computers, virtual reality (VR) or augmented reality (AR) headsets, tablet devices, television (IP Television), etc., that can provide network connectivity and processing resources for communicating with the system over a network. A computing device can also correspond to custom hardware, in-vehicle devices, or on-board computers, etc. The computing device can also operate a designated application configured to communicate with the network service.
- One or more examples described herein provide that methods, techniques, and actions performed by a computing device are performed programmatically, or as a computer-implemented method. Programmatically, as used herein, means through the use of code or computer-executable instructions. These instructions can be stored in one or more memory resources of the computing device. A programmatically performed step may or may not be automatic.
- One or more examples described herein can be implemented using programmatic modules, engines, or components. A programmatic module, engine, or component can include a program, a sub-routine, a portion of a program, or a software component or a hardware component capable of performing one or more stated tasks or functions. As used herein, a module or component can exist on a hardware component independently of other modules or components. Alternatively, a module or component can be a shared element or process of other modules, programs or machines.
- Some examples described herein can generally require the use of computing devices, including processing and memory resources. For example, one or more examples described herein may be implemented, in whole or in part, on computing devices such as servers, desktop computers, cellular or smartphones, personal digital assistants (e.g., PDAs), laptop computers, VR or AR devices, printers, digital picture frames, network equipment (e.g., routers) and tablet devices. Memory, processing, and network resources may all be used in connection with the establishment, use, or performance of any example described herein (including with the performance of any method or with the implementation of any system).
- Furthermore, one or more examples described herein may be implemented through the use of instructions that are executable by one or more processors. These instructions may be carried on a computer-readable medium. Machines shown or described with figures below provide examples of processing resources and computer-readable mediums on which instructions for implementing examples disclosed herein can be carried and/or executed. In particular, the numerous machines shown with examples of the invention include processors and various forms of memory for holding data and instructions. Examples of computer-readable mediums include permanent memory storage devices, such as hard drives on personal computers or servers. Other examples of computer storage mediums include portable storage units, such as CD or DVD units, flash memory (such as carried on smartphones, multifunctional devices or tablets), and magnetic memory. Computers, terminals, network enabled devices (e.g., mobile devices, such as cell phones) are all examples of machines and devices that utilize processors, memory, and instructions stored on computer-readable mediums. Additionally, examples may be implemented in the form of computer-programs, or a computer usable carrier medium capable of carrying such a program.
- Some examples are referenced herein in context of an autonomous vehicle (AV) or self-driving vehicle (SDV). AVs or SDVs refer to vehicles that operate or can be operated in a state of automation with respect to steering, propulsion, and/or braking. Some vehicles may include human-based controls (e.g., a steering wheel, gear shifter, brake pedal, and accelerator pedal), and can be switch between a fully autonomous mode, partial autonomous mode, and/or manual control mode. In fully autonomous mode, AVs or SDVs can operate on public roads without any human assistance utilizing a sensor suite and data processing systems to provide an awareness of the AV's or SDV's situational environment. In processing sensor data from the sensor suite—which can comprise a number of sensor systems such as LIDAR, monocular camera, stereoscopic camera, infrared proximity-based, sonar, or radar systems—the AV or SDV can operate its control mechanisms to safely control and maneuver through various road and traffic infrastructures typical of both urban and rural transportation environments.
-
FIG. 1 is a block diagram illustrating an example network computer system in communication with computing devices of requesting users and service providers, in accordance with examples described herein. Thenetwork computer system 100 can manage an on-demand network-based service that connects requesting users 174 withservice providers 184 that are available to provide services to the users 174. In one example, the on-demand network-based service can provide a platform that enables ride sharing services between requesting users 174 andavailable service providers 184 by way of a service application 175 executing on thecomputing devices 170 of the requesting users 174, and aservice provider application 185 executing on thecomputing devices 180 ofservice providers 184. As used herein, a requesting user'scomputing device 170 and a service provider'scomputing device 180 can comprise computing devices with functionality to execute a designated application corresponding to the on-demand service managed by thenetwork computer system 100. In many examples, the requesting user'scomputing device 170 and the service provider'scomputing device 180 can comprise mobile computing devices, such as smartphones, tablet computers, VR or AR headsets, on-board computing systems of vehicles, personal computers, laptops, wearable computing devices, and the like. - The
network computer system 100 can include anapplication interface 125 to communicate withrequester devices 170 over one ormore networks 160 via the service application 175. According to examples, a requesting user 174 wishing to utilize the network service can launch the service application 175 and transmit aservice request 171 over thenetwork 160 to thenetwork computer system 100. In certain implementations, the requesting user 174 can view multiple different service options managed by thenetwork computer system 100. For example, in the context of on-demand transport services, the service options can include a ride-pooling service, a standard ride share service, a luxury vehicle service, a high-capacity van or large vehicle service, a professional driver service (e.g., where the service provider is certified), a self-driving vehicle transport service, other specialized ride services, and the like. In some examples, thenetwork computer system 100 can utilize theservice provider locations 113 to provide therequester devices 170 withETA data 164 of proximate service providers for each respective service option. For example, the service application 175 can enable the requesting user 174 to view information corresponding to each service option. - As described herein, the content shown on the
user interface 152 of the service application 175 can be updated by way of acontent engine 120 andpricing engine 150 of thenetwork computer system 100, and can comprise a number of graphic features that correspond to each service option providing the requesting user 174 with detailed information to facilitate in making a service option selection. The user can interact with theuser interface 152 of the service app 175 to select a particular service option and transmit aservice request 171 to thenetwork computer system 100. - In some examples, the
service request 171 can include a rendezvous location within a given region (e.g., a metropolitan area managed by one or more datacenters corresponding to the network computer system 100) in which a matched service provider is to rendezvous with the requesting user 174. The rendezvous location can be inputted by the user by setting a location pin on a user interface of the service app 175, or can be determined by a current location of the requesting user 174 (e.g., utilizing location-based resources of the requester device 170). Additionally, the requesting user 174 can further input a service completion location (e.g., a destination) during or after submitting theservice request 171. - According to examples described herein, the
user interface 152 of the service application 175 can query the requesting user 174 for a service completion location, or otherwise provide input features on theuser interface 152 to receive data indicating a desiredcompletion location 172. Thepricing engine 150 can perform dynamic cost computations based on service provider supply andprovider locations 113, the requester'slocation 173, and/or theservice completion location 172 inputted by the requesting user 174. As provided herein, thepricing engine 150 can perform pricing calculations according to a set formula or algorithm for each specified service option, and provideprice data 153 to thecontent engine 120 to enable thecontent engine 120 to providecontent updates 123 to therequester device 170. The content updates 123 can comprise graphic features indicatingETA data 164 corresponding to an ETA of a representative service provider for each service option. Additionally or alternatively, the content updates 123 can include selectable graphic features providing pricing information for each service option (e.g., an estimated or guaranteed upfront price to transport the user 174 to an inputted destination). - In accordance with some examples, the
network computer system 100 can include adatabase 140storing requester profiles 144 and/or service provider profiles 142. Thedatabase 140 can be accessible by thepricing engine 150 to, for example, determine the service option qualifications of theservice providers 184 by performinglookups 157 in the service provider profiles 142. Theservice provider profile 142 for a particular service provider can include identifying information, such as vehicle information (e.g., vehicle model, year, license plate number, and color), the service provider's overall rating, qualified service options (e.g., professional service provider, certified assistance service provider, etc.), experience, earnings, and the like. In variations, theservice provider profile 142 can further include the service provider's preferences, such as preferred service areas, routes, hours of operation, and the like. Accordingly, thepricing engine 150 can correlate theservice provider locations 113 of a group ofservice providers 184—within proximity to thecurrent location 173 of the requesting user 174—with theprofile data 149 for thoseservice providers 184 to determine one or more service options that each of theservice providers 184 can provide for the requesting user 174. - Utilizing the
profile data 149,service provider locations 113, and theservice completion location 172, thepricing engine 150 can provideupfront pricing data 153 to thecontent engine 120 indicating a current upfront cost for each of the service options. As provided herein, the service options can comprise one or more carpooling service options, a standard ride-sharing service option (e.g., a normal car and operator), premium ride-sharing service options (e.g., black car, luxury vehicle, high capacity, luxury high-capacity, and/or professional driver services), and can further include any number of specialized service request features, such as disability vehicle features and/or assistance, baby or toddler seat, bike rack, pick-up truck, roof racks, audio and/or video configurations, Wi-Fi access requests, and the like. Such service options and available configuration request features can be indicated in theprofile data 149 of the service provider profiles 142. In certain examples, thepricing engine 150 can further utilize theservice provider locations 113 andprofile data 149 for those service providers to factor in a supply and demand calculation to determine theprice data 153 for each service option, or for selected service options (e.g., carpooling). - In variations, the
pricing engine 150 can perform certain optimization operations to identify opportunities in which cost and or ETA can be reduced. For example, thepricing engine 150 can utilizemap data 137 from amapping engine 135 to identify the specific routes and directions of travel for each service provider 184 (or for a certain class of service providers, such as carpool service providers), and determine one or more rendezvous points that require the requesting user 174 to walk a certain distance, but would decrease at least one of ETA or cost. In identifying such rendezvous locations, thepricing engine 150 can provide thecontent engine 120 withprice data 153 and service option information so that thecontent engine 120 can generate a dedicated graphic feature that includes the reduced price and an indicator that the requesting user 174 must walk or travel a certain distance. According to examples, a user input 179 selecting of this dedicated graphic feature can cause thecontent engine 120 to provide mapping content showing the rendezvous point(s) and walking directions to the rendezvous point(s). - As further provided by examples herein, the
user interface 152 can enable the requesting user 174 to configure a number of features or parameters of a selected service option. As such, theuser interface 152 can include a configuration feature selectable to cause a configuration interface to be displayed on therequester device 170. The requesting user 174 can provideservice configuration inputs 177 to make certain requests described herein (e.g., a requested number of seats for a carpooling service). In various examples, theservice configuration inputs 177 provided by the requesting user 174 can cause theprice data 153 for the selected service option to change. Accordingly, thecontent engine 120 can provideconfiguration data 121 to thepricing engine 150, which can recalculate theprice data 153 for the selected service option based on theconfiguration inputs 177. The recalculatedprice data 153 can be submitted to thecontent engine 120, which can provide acontent update 123 to therequester device 170 to display the updated price. In some aspects, the updatedprice data 153 can be provided to the requesting user 174 in response to a user input on a selection feature (e.g., a “done” icon) once all configurations are inputted. In variations, the updatedprice data 153 can be provided dynamically to the requesting user 174 as each configuration is inputted. Thus, in such implementations, the requesting user 174 can view a dynamically updated cost for the ride while inputting theservice configurations 177 in real time. - In further examples, the
user interface 152 can provide the requesting user 174 with a set of tolerance options that can result in a lower service cost. For example, the service application 175 can generate a tolerance interface enabling the requesting user 174 to set a number of tolerance parameters, such as flexible rendezvous time, flexible drop-off time, flexible service location (e.g., causing the requesting user 174 to walk beyond a threshold relative distance, such as more than hundred meters), flexible ride time (e.g., for carpooling services that can make additional stops), and the like. Each tolerance parameter set by the requesting user 174 can affect theprice data 153. Thus, thecontent engine 120 can provide theservice configuration data 121—corresponding to the tolerance parameters set by the user 174—to thepricing engine 150 which can recalculate theprice data 153 for the selected service option accordingly. - In variations, the
pricing engine 150 can identify the supply conditions for certain ride service option (e.g., the number and relative directions of travel of ride-pool service providers 184) to preemptively provide updatedprice data 153 for certain tolerance parameters. Thus, thepricing engine 150 can provide aprice data 153 for each tolerance parameter on the tolerance interface that enables the requesting user 174 to viewprice data 153 prior to the requesting user 174 setting any of the tolerance parameters. As provided herein,such price data 153 for each selectable tolerance parameter can be an upfront guaranteed price or can include an estimated of cost savings for the selected service option. In certain variations, thepricing engine 150 can dynamically calculateprice data 153 updates in response toconfiguration inputs 177 on the tolerance interface. For such variations, thecontent engine 120 can dynamically update theuser interface 152 to display the updatedprice information 153 based on theconfiguration inputs 177 on the tolerance interface. - In various implementations, the
network computer system 100 can further include aselection engine 130 to process the service requests 171 in order to ultimately select from a pool ofservice providers 184 operating throughout the given region to service the service requests 171. Thenetwork computer system 100 can include aservice provider interface 115 to communicate with theservice provider devices 180 via theservice provider application 185. In accordance with various examples, theservice provider devices 180 can transmit their current locations using location-based resources of the service provider devices 180 (e.g., GPS resources). Theseservice provider locations 113 can be utilized by theselection engine 130 to identify a set ofcandidate service providers 184, in relation to the service location, that can service theservice request 171. - The
database 140 can further be accessible by theselection engine 130 in matching a candidate service provider with a requesting user 174. For example, the requesting user 174 can preconfigure therequester profile 144 with certain preferences (e.g., preferred service options) and requirements (e.g., disability assistance), and can provide ratings forservice providers 184 that have provided transportation to the requesting user 174. In some examples, other information can be provided by the requesting user 174, such as comments and complaints, which can be utilized by thenetwork computer system 100 in maintaining and updating the requesting user's 174requester profile 144. Historical data corresponding to the requesting user's 174 utilization of the on-demand service can also be analyzed to independently determine certain inclinations or preferences of the requesting user 174. For example, the historical data can indicate a rate of usage (e.g., once per week), common destinations and service locations, and favored service options. Theselection engine 130 can utilize the user information in therequester profile 144 of the requesting user 174 upon receiving aservice request 171, in order to determine anoptimal service provider 189 from the candidate set ofservice providers 184. Theselection engine 130 can further utilizeservice provider information 149 from the service provider profiles 142 in order to determine anoptimal service provider 189 to fulfill or complete aparticular service request 171. - Once the user 174 has configured a service option and/or selected a service option, the user 174 can select a request feature on the service app 175 that causes the
requester device 170 to generate and transmit aservice request 171 to thenetwork computer system 100. In response to theservice request 171, theselection engine 130 can initially filter service providers based on the requested service option by the requesting user 174 to identify a set ofcandidate service providers 184 to fulfill theservice request 171. In certain implementations, theselection engine 130 can further filter the candidate set ofservice providers 184 by utilizing theprofile data 149 for each of the candidate set ofservice providers 184, as well as the current locations, distances from the service location, and/or respective ETAs to the service location. Based on theprofile data 149 for eachcandidate service provider 184, their respective locations and/or ETAs, information in therequester profile 144, andprofile data 149 from the service provider profiles 142, theselection engine 130 can determine anoptimal service provider 189 from the candidate set ofservice providers 184, and transmit aservice invitation 132 to thatservice provider 189 to fulfill theservice request 171. - In certain examples, the
network computer system 100 can also select a proximate self-driving vehicle (SDV) to fulfill theservice request 171. Thus, the pool of proximate candidate service providers in relation to a service location can also include one or more SDVs operating throughout the given region. - In some aspects, the
network computer system 100 can include amapping engine 135, or can utilize a third-party mapping service, to generatemap data 137 and ortraffic data 139 in the environment surrounding the service location. Theselection engine 130 can utilize thecurrent locations 113 of theservice providers 184, themap data 137, and/or thetraffic data 139 in order to select theoptimal service provider 189 to service theservice request 171. As provided herein, theoptimal service provider 189 can be a service provider that is closest to the requesting user 174 or the service location with respect to distance or time, or can be a proximate service provider that is optimal for other reasons, such as the service provider's experience, the amount of time the service provider has been on the clock, the service provider's current earnings, and the like. - In further examples, the
selection engine 130 can receive theservice configuration inputs 177 corresponding to user inputs 179 on the configuration interface and/or tolerance interface of the service application 175. Theselection engine 130 can utilize theconfiguration inputs 177—as well as the selected service option—to filter the candidate set ofservice providers 184. The resultant filtered set can comprise service providers that satisfy the selected ride service option, and each of the specialized configuration requests and/or tolerance parameters configured by the requesting user 174. In many aspects, theselection engine 130 can then determine anoptimal service provider 189 from the filtered set of service providers to fulfill theservice request 171. As described herein, theoptimal service provider 189 may be selected based on having a shortest distance and/or time to the service location, or may be selected based on other factors, such as localized service provider supply in the present area, proximate areas, and other valuation metrics. - Once the
optimal service provider 189 is selected, theselection engine 130 can generate aservice invitation 132 to service theservice request 171, and transmit theservice invitation 132 to theoptimal service provider 189 via theservice provider application 185 executing on the optimal service provider'scomputing device 180. Upon receiving theservice invitation 132, theoptimal service provider 189 can either accept or reject theinvitation 132. Rejection of theinvitation 132 can cause theselection engine 130 to determine another optimal service provider from the candidate set ofservice providers 184 to service theservice request 171, or can cause theselection engine 130 to determine a new set of candidate service providers from which to select another service provider. If theoptimal service provider 189 accepts (e.g., via an acceptance input), then theacceptance input 181 can be transmitted back to theselection engine 130, which can generate and transmit aconfirmation 134 of theoptimal service provider 189 to the requesting user 174 via the service application 175 executing on the requesting user's 174computing device 170. - According to examples provided herein, the
content engine 120 can manage the manner in which content is displayed on therequester devices 170 and/or theservice provider devices 180. Regarding therequester devices 170, thecontent engine 120 can providecontent updates 123 based on user inputs 179 on theuser interface 152 generated by the service application 175. For example, a user selection on a content feature of the service app 175 can cause thecontent engine 120 to generate a new screen on the service app 175, or cause a current screen to pivot between certain displayed features. In many examples, thecontent engine 120 can access a local database that includes user interface elements to provide the content updates 123 to therequester devices 170 in response to the user inputs 179. The user interface elements can comprise any number of screens with any number of selectable features, displayed information, input boxes, and/or spatial elements that can provide third party content from third party applications (e.g., news content, social media content, etc.). Furthermore, the user interface elements can include preconfigured features that enable therequester device 170 to enhance user experience. - In some examples, the
content engine 120 can receive therequester location 173 of a requesting user 174 and input therequester location 173 ontomap data 137 from themapping engine 135. Themap data 137 can further includeservice provider locations 113 of available service providers proximate to the requesting user 174. Thecontent engine 120 can providemap content 124 to therequester device 170 of the requesting user 174 via the service application 175. In generating themap content 124, thecontent engine 120 can include virtual representations of proximate available service providers that can be filtered based on service option, as described herein. As further described herein, themap content 124 can be displayed on theuser interface 152 to include information corresponding to a requested service option, such asETA data 164 for theoptimal service provider 189 to arrive at the rendezvous location, an estimated walk time for the requesting user 174 between a current location and the service location, and a total completion time for the service (e.g., a total ETA for transporting the requesting user 174 to an inputted destination). -
FIG. 2 is a block diagram illustrating an example computing device of a requesting user (i.e., a “requester device” 200) executing a designated service application for an on-demand network-based service, as described herein. In many implementations, therequester device 200 can comprise a mobile computing device, such as a smartphone, tablet computer, laptop computer, VR or AR headset device, and the like. As such, therequester device 200 can include typical telephony features such as amicrophone 245, acamera 250, and acommunication interface 210 to communicate with external entities using any type of wireless communication protocol. In certain aspects, therequester device 200 can store a designated application (e.g., a service app 232) in a local memory 230. - In response to a user input 218, the
service app 232 can be executed by one ormore processors 240, which can cause anapp interface 242 to be generated on adisplay screen 220 of therequester device 200. Theapp interface 242 can enable the user to, for example, check current price levels and availability for various service options of the on-demand service. In various implementations, theapp interface 242 can further enable the user to via information corresponding to the multiple service options, and select from the multiple service options, such as a carpooling service option, a regular ride-sharing service option, a professional ride service option, a van transport service option, a luxurious ride service option, and the like. - The user can generate a
service request 267 via user inputs 218 provided on theapp interface 242. According to examples described herein, the user can provide user inputs 218 on theapp interface 242, which can be processed by the processor(s) 240 and/or thenetwork computer system 290 over the network(s) 280 to providecontent updates 244, as described herein with respect to the user interface examples shown inFIGS. 3A and 3B , andFIGS. 4A through 4I . In doing so, theservice application 232 can enable a communication link with anetwork computer system 290 over thenetwork 280, such as thenetwork computer system 100 as shown and described with respect toFIG. 1 . For example, to request transportation for an on-demand transport service managed by thenetwork computer system 290, the user can input a service completion location (e.g., a destination) and/or a rendezvous location (e.g., a pick-up location), select a service option, configure the selected service option, and/or set any number of tolerance parameters. Furthermore, theapp interface 242 can provide upfront information about each available service option, such as price data 292, an estimated time of arrival at the service location or destination, and the like. - In some aspects, the
requester device 200 can transmitinput data 228—corresponding to the user inputs 218 on theapp interface 242—to thenetwork computer system 290 that affects the price calculations of certain service options. Theinput data 228 can be processed by the network computer system 290 (e.g., by thepricing engine 150 shown inFIG. 1 ) to provide updatedprice data 296 for display on theapplication interface 242. As described herein, theprice data 296 can be updated for each service option, which can be represented by selectable graphic features on theapplication interface 242 that enable the user to request the service option of the on-demand network-based service. - Once the ride service option is selected and the user wishes to submit a
service request 267, the processor(s) 240 can transmit theservice request 267 via thecommunications interface 210 to the backendnetwork computer system 290 over anetwork 280. In response, therequester device 200 can receive aconfirmation 269 from thenetwork computer system 290 indicating the selected service provider and vehicle that will fulfill theservice request 267 and rendezvous with the user at the rendezvous point. In various examples, therequester device 200 can further include aGPS module 260, which can providelocation data 262 indicating the current location of the requesting user to thenetwork computer system 290 to, for example, establish the rendezvous point and/or select an optimal service provider or autonomous vehicle to fulfill theservice request 267. - As provided herein, one or more processes described in connection with the
network computer system 100 ofFIG. 1 can be performed by the processor(s) 240 of therequester device 200 executing theservice application 232. For example,certain content updates 244 for theapp interface 242 can be generated by the processor(s) 240 as opposed to thecontent engine 120 as shown and described with respect toFIG. 1 . Accordingly, the content updates 244 corresponding tocertain service application 232 screens and interface can be generated by the processor(s) 240 of therequester device 200 via execution of theservice application 232. -
FIGS. 3A and 3B illustrate example user interfaces on a requester device, according to examples described herein. In the below description ofFIGS. 3A and 3B , reference may be made to reference characters representing like features as shown and described with respect toFIGS. 1 and 2 . Referring toFIG. 3A , execution of theservice application 232 on therequester device 200 can cause anapp interface 301 to be generated on thedisplay screen 220. In some aspects, theapp interface 301 can comprise aninitial home screen 300, and can feature such elements as adestination input box 303, alocation feature 305 indicating the user's current location, and virtual representations of proximate available service providers 307. In some aspects, the features of thehome screen 300 can overlay or be included withmap content 309 of the surrounding area of the user. - In some aspects, the
home screen 300 can include a set of destination accelerator features 308 that the user can select to automatically configure a service request using a single selection input, or eliminating one or more additional steps in a normal request process. For example, thenetwork computer system 290 can determine common or routine destinations for the user in connection with an on-demand transport service, such as the user's home, place of work, a child care facility or a gym. Thenetwork computer system 290 can further determine a routine ride type that the user utilizes when going to such locations. Thus, selection of adestination accelerator feature 308 can automatically preconfigure a pick-up request via automated destination input and ride service selection, and can utilize the user's current location to establish a pick-up location. -
FIG. 3B illustrates an optionalcategory selection screen 311 that enables the user to select from any number ofride service categories 312. For example, thecategory selection screen 311 can enable the user to filter the ride service options via an initial input selecting a particular category. As provided herein, selection of the “economy” feature can cause only carpooling, standard ride sharing, and high capacity ride service options to be selected. - Upon inputting a destination in the
destination input box 303 or selecting adestination accelerator 308, therequester device 200 can display a ride service selection interface, as shown inFIGS. 4A through 4D . Referring toFIGS. 4A and 4B , the ride service selection interface can include map content indicating a current location of the user and a window displaying thegraphic features 408 corresponding to the ride service options 405. According to various examples, the user can select or make a selection of a particular ride service option 405 and select arequest feature 410 to request a ride. As shown inFIGS. 4A and 4B , each of the ride service options 405 can be displayed with an upfront price 402 indicating a cost for the service to transport the user to the inputted destination. - In addition to the ride service option 405 and upfront price 402, the
graphic features 408 can also show an estimated arrival time or an estimated time to destination (ETD) 403 from the service location for each particular ride service option 405. In some examples, the ride service selection interface can also display an estimated time for pickup by a service provider or an estimated departure time (EDT) feature 401 indicating an estimated shortest pick-up time for a selected ride service option, or a more general EDT for all the ride service options 405. As further provided herein, each of the ride service options 405 can be organized on the interface according toservice categories 404. Thus, a window portion displaying theservice categories 404 and thegraphic features 408 can be scrollable (e.g., laterally scrollable as shown) to reveal additional ride service options 405 inadditional service categories 404. - As shown in
FIG. 4A , the user has selected a carpooling service option, and can input therequest feature 410 to lock in the displayed price and transmit a service request to thenetwork computer system 290. As shown inFIG. 4B , the user has selected the standard ride-sharing service (e.g., personalized service provider and vehicle with no additional passengers), and can select therequest feature 410 to request the selected service at the displayed price. Referring toFIG. 4C , the user has scrolled to the premium categories and selected a black car service option. In some aspects, selection of a non-pooling service option can also cause theservice application 232 to display a proposedroute 416 to the destination. Furthermore, as shown inFIGS. 4A through 4D , the ride service selection interface include aconfiguration feature 412 that is selectable to generate a configuration interface as shown inFIG. 4G . Referring toFIG. 4D , the user has scrolled further to display a set ofspecialized service options 414 on the ride service selection interface. As shown inFIG. 4D , thespecialized service options 414 can include certain disability assistance services or language requests. - In some aspects, the
service application 232 can also suggest alternative pick-up points 422, as shown inFIG. 4E . These service locations 422 can be mandated by local rules and regulations (e.g., airport rules), or may result from an optimization calculation by theservice application 232 or thenetwork computer system 290 to reduce wait time and/or cost. In one example, each of the alternative pick-up points 422 can be selectable on map content (as shown inFIG. 4E ). User selection of a particular alternative pick-up point can, for example, cause additional information to be displayed (e.g., price update information), or can input the selected location as the rendezvous point for the user and service provider. -
FIG. 4F shows aselection 426 of a carpooling graphic feature. Also shown inFIG. 4F is a walk/rendezvous feature 427 that offers the user a less expensive option, but may require longer waiting time and/or the user walking or traveling a certain distance. In one example, selection of the walk/rendezvous feature 427 can cause the map content showing an alternate pick-up point 422 to be displayed. In some variations, thenetwork computer system 290 can utilize carpooling routes and additional trip data (e.g., available seats in carpool service providers' vehicles) to perform an optimization operation, which can comprise a cost, time, and/or walking distance optimization to converge on a particular combination of price, walking distance to a service location, and wait time—in addition to improving high level ride service flows of the service providers through traffic. Thus, the walk/rendezvous feature 427 can represent a ride-pooling service with the foregoing optimization, and can be selectable to request the optimized carpooling service. - Additionally, the walk/
rendezvous feature 427 can further cause a tolerance interface to be displayed (not shown) that enables the user to specify certain tolerance parameters that can further affect the price, pick-up time, and/or ride time. In some aspects, the tolerance parameters inputted by the user can be factored into the optimization operation in order to provide the information shown in connection with the walk/rendezvous feature 427 (e.g., price, ETD, walking distance, and the like). - In certain implementations, selection of either the walk/
rendezvous feature 427 or the standard carpooling feature (selection 426) can switch from the proposedroute 416 shown inFIG. 4C , to aHaversine route 424 as shown inFIG. 4F . In certain implementations, selection of the other ride service options (i.e., personalized ride services) can cause theservice application 232 to switch back to a proposedroute 416. In some aspects, the switch between proposedroute 416 andHaversine route 424 can be due to the actual route being unknown or calculated on the fly for carpooling services. In other examples, when the route is known, theservice application 232 can display a carpooling route and the specified stops (i.e., pick-up and/or drop-off location) along the route. -
FIG. 4F also shows a number ofpassengers 428 or requested seats for the selected ride service option. In some examples, the number of passengers feature 428 can be displayed when the user selects a carpooling service. In variations, the number of passengers feature 428 can be persistently displayed. Theservice application 232 can further display aconfiguration feature 429 that the user can selection to cause theconfiguration interface 430 to be displayed, as shown inFIG. 4G . According to examples provided herein, theconfiguration interface 430 enables the user to configure various aspects of the ride, and can allow the user to make additional requests, such as a number of seats, a baby or toddle car seat, music or other audio or video configurations, Wi-Fi access, and the like. As shown inFIG. 4G , the user has requested accessibility for two passengers and a baby car seat for the ride. - Once the user has configured the ride using the configuration interface, the
network computer system 290 and/orservice application 232 can display an updated ride selection interface showing updates corresponding to the user configurations. For example, the updated ride selection interface can display the updatedprice 432 based on the user configurations, the special request 434 (e.g., a baby car seat), and the required number ofpassengers 436. If the user is satisfied with the configurations and updatedprice 432, the user can select therequest feature 438 to cause a pick-up request to be transmitted to thenetwork computer system 290, which can select an optimal driver satisfying the ride service option, user configurations, and/or tolerance parameters to service the requested ride. -
FIG. 4I illustrates an “en route”screen 440 generated once a pick-up request has been submitted and aservicing driver 446 has been selected. In certain aspects, the en routescreen 440 can be generated as a subsequent screen in response to a driver being selected to service a pick-up request. The en routescreen 440 can include a pick-up location 444 as well as the user's current location, and estimated time ofarrival information 442 for theservicing driver 446. In many aspects, the en routescreen 440 can further includedriver information 448 such as the servicing driver's 446 name, vehicle type, and license plate number. Furthermore, the various features of the en route screen can also overlay or be included with map content. - In the below discussions of
FIGS. 5 and 6 , reference may be made to reference characters representing like features as shown and described with respect toFIGS. 1 through 4I . Furthermore, the processes described with respect toFIGS. 5 and 6 below may be performed by an examplenetwork computer system requester device service application 175, 232 or a combination of therequester device service application 175, 232 and thenetwork computer system -
FIG. 5 is a flow chart describing an example method of providing upfront data to facilitate service provider selection in connection with an on-demand network-based service, according to examples described herein. Referring toFIG. 5 , thenetwork computer system 100 can receive data indicating aservice completion location 172 from a requester device executing a designated service application 175 for an on-demand service managed by the network computer system 100 (500). The network computer system can further determine thecurrent location 173 of the requester device 170 (e.g., via location-based resources of the requester device 170) (505). Still further, thenetwork computer system 100 can determineservice provider locations 113 throughout the given region for each of a plurality of service options, described herein (510). - Utilizing at least the inputted
service completion location 172 and the current location of the requesting user 174, thenetwork computer system 100 can compute an upfront price for each service option (515). Thenetwork computer system 100 can then generatedgraphic features 408 for display on auser interface 152 of therequester device 170 for each service option (520) As provided herein, eachgraphic feature 408 can include an upfront cost 402 for a requested service for that particular service option (524). Additionally or alternatively, one or more of thegraphic features 408 can include an estimated time to destination (ETD) 403 corresponding to a time of completion for the selected service between the user 174 and a representative service provider for the service option at the rendezvous location (522). In various implementations, thenetwork computer system 100 can receive aservice request 171 indicating a service option selection (525). Thenetwork computer system 100 may then select an available oroptimal service provider 189 qualified for the selected service option to fulfill the service request 171 (530). -
FIG. 6 is another flow chart describing an example method of providing upfront data to facilitate user selection in connection with an on-demand network-based service, according to examples described herein. Thenetwork computer system 100 can manage an on-demand service for a given region (600). In doing so, thenetwork computer system 100 can matchavailable service providers 184 with requesting users 174, providing a variety of service options at a corresponding variety of cost metrics. Thenetwork computer system 100 may provide auser interface 152 for the on-demand service for display on the requester devices 170 (e.g., via execution of a service application 175) (605). In various examples, theuser interface 152 can providemap content 124 enabling the user to view a surrounding area and the service environment, such as graphic representations ofavailable service providers 184 operating within proximity of the user, and/or dedicated graphic representations of service providers representing the various service options (607). Additionally or alternatively, theuser interface 152 can further display a number of request features that enables the requesting user 174 to transmit aservice request 171 to the network computer system 100 (609). - As illustrated in the screenshots provided herein, the request features can include a service completion location (or destination)
input box 303 that enables the user 174 to type adestination 172, or can include a voice feature that enables the user to speak adestination 172. In variations, theuser interface 152 can display a home screen that includes a number of accelerator features 308 that enable the user to automatically configure aservice request 171 withpredetermined completion locations 172 and/or ride service options—cutting down on request steps. In further variations, the request features can further enable the requesting user 174 to input a rendezvous location, for example, by setting a location pin or typing or voicing a rendezvous location. As further provided herein, the request features can include a number ofgraphic features 408 indicating specified service options with information for each service option (e.g., price data and ETD data). - According to examples described herein, the
network computer system 100 can receive data indicating a service completion location from the requesting user 174 (610). Such information can be received over one or more networks established via execution of the service application 175 on the requesting user'scomputing device 170. Thenetwork computer system 100 can further determine the current location of the user 174, for example, via location-based resources of the requester device 170 (615). Thenetwork computer system 100 may then compute an upfront price 402 for each available service option (620). In various implementations, the computation of the upfront price 402 can be performed by thenetwork computer system 100 automatically without inquiry by the requesting user 174 using only limited information, such as the rendezvous location orcurrent location 173 of the user 174 and the service completion location 172 (632), and/or the supply ofservice providers 184 for each service option (634). In certain variations, the price computation for each service option can be performed as a background, dynamic process and can be continuously or periodically updated ongraphic features 408 displayed on the requester device 170 (e.g., once every ten seconds). - Furthermore, individual computations may be performed for each service option, such as one or more carpooling services (622), a standard ride-sharing service (624), one or more specialized services (e.g., disabled access, high capacity vehicles, bike rack, roof rack, foreign language, and the like) (630), a professional driver service (628), and/or a luxury or premium vehicle service (626). Still further, the
network computer system 100 can receive the service provider locations 113 (e.g., via location-based or GPS resources of the service provider devices 180) to determine anETD 403 for at least one of the service options. In some aspects, thenetwork computer system 100 can calculate theETD 403 for a specified service option by utilizing one or more representative service providers for that service option. Thus, theETD 403 can be anactual ETD 403 for a single representative service provider, or can be an averagedETD 403 based on the locations of multiple service providers for that service option, routing information, and/or current or expectedtraffic information 139. - As described herein, the
network computer system 100 can further generategraphic features 408 for each service option to be displayed on theuser interface 152 of the requester device 170 (635). In addition to specifying the service option, eachgraphic feature 408 can also indicate the upfront price 402 for the service option (637), and/or thecalculated ETD 403 for the service option (639). In certain implementations, theuser interface 152 can further provide aselectable configuration feature 412 that enables the user to configure various aspects of the selected service option (645), such as a number of seats required (647) and/or additional specialized requests (e.g., Wi-Fi access, audio or video settings, a baby car seat, a bike rack, roof racks, and the like) (649). In certain implementations, thenetwork computer system 100 can update the calculated price 402 and/orETD 403 on thegraphic feature 408 based on theuser configurations 177. - In some aspects, the
network computer system 100 can also perform an optimization operation for one or more service options based on tolerance parameters (650). According to such aspects, thenetwork computer system 100 can perform the optimization operation in response to user inputs of tolerance parameters (e.g., on a tolerance interface of the service application 175), or preemptively and independently based on the service provider supply conditions (e.g., number of service providers, service provider routes and locations, etc.). In one example, thenetwork computer system 100 preemptively performs the optimization operation for the carpooling service to provide the user 174 with an additional, lower cost option if the requesting user is, for example, willing to walk a certain distance and/or willing to wait for a relatively longer period of time. - In performing the optimization operation, the
network computer system 100 can optimize cost for the requesting user 174 (652). For example, thenetwork computer system 100 can identify service provider routes of carpool service providers, and instead of rerouting a closest available carpooling service provider, thenetwork computer system 100 may identify one or more additional service providers on current routes that will pass close to thecurrent location 173 of the user 174. The cost calculation for a minor detour of such service providers versus a relatively major detour for a closer service provider may result in an overall lower cost, but higher wait time, for the user 174. However, examples described herein recognize that a cost optimization alone may result in unreasonable wait times and/or walking distances for the user 174. - Thus, in addition to the cost optimization, the
network computer system 100 can also perform a wait time optimization (653) and a walking distance or travel optimization for the user 174 (654). According to examples, the combination of cost savings, wait time, and walk time optimizations can cause thenetwork computer system 100 to converge on an optimal alternative rendezvous location for the user 174 that is a certain walking distance away from the requesting user'scurrent location 173, requiring a certain wait time, and saving the user 174 a certain amount in costs. Once the optimization operation is performed, thenetwork computer system 100 can generate an additional graphic feature (e.g., the walk/rendezvous feature 427 shown inFIG. 4F ) displaying an additional service option based on the optimization (655). As provided herein, the additional service option graphic can display an upfront price 402 and/or anETD 403 for the additional service option (e.g., the walk/rendezvous service option). Furthermore, a user selection of this service option can cause a mapping interface to be displayed indicating a walking route for the requesting user to meet the service provider at the optimal rendezvous location (e.g., for pick-up and transportation to a destination). - In various implementations, the
network computer system 100 may then receive aservice request 171 indicating the selected service option (660). In response to theservice request 171, thenetwork computer system 100 can filter theavailable service providers 184 based on the selected ride service option, and select anoptimal service provider 189 from the remaining candidate service providers to service the service request 171 (665). In selecting theservice provider 189, thenetwork computer system 100 can further generate and transmit aservice invitation 132 to the selectedservice provider 189, which theservice provider 189 can accept or decline. If the service provider accepts, thenetwork computer system 100 can transmit aconfirmation 134 back the user 174. However, if the selectedservice provider 189 rejects theinvitation 132, thenetwork computer system 100 can determine a second set of candidates and make another selection of a most optimal service provider from the second candidate set. -
FIG. 7 is a block diagram that illustrates a computer system upon which examples described herein may be implemented. Acomputer system 700 can be implemented on, for example, a server or combination of servers. For example, thecomputer system 700 may be implemented for providing on-demand services. In the context ofFIG. 1 , thenetwork computer system 100 may be implemented using acomputer system 700 such as described byFIG. 7 . Thenetwork computer system 100 may also be implemented using a combination of multiple computer systems as described in connection withFIG. 7 . - In one implementation, the
computer system 700 includes processingresources 710, amain memory 720, a read-only memory (ROM) 730, astorage device 740, and acommunication interface 750. Thecomputer system 700 includes at least oneprocessor 710 for processing information stored in themain memory 720, such as provided by a random access memory (RAM) or other dynamic storage device, for storing information and instructions which are executable by theprocessor 710. Themain memory 720 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by theprocessor 710. Thecomputer system 700 may also include theROM 730 or other static storage device for storing static information and instructions for theprocessor 710. Astorage device 740, such as a magnetic disk or optical disk, is provided for storing information and instructions. - The
communication interface 750 enables thecomputer system 700 to communicate with one or more networks 780 (e.g., cellular network) through use of the network link (wireless or wired). Using the network link, thecomputer system 700 can communicate with one or more computing devices, one or more servers, and/or one or more self-driving vehicles. In accordance with examples, thecomputer system 700 receivesservice requests 782 from mobile computing devices of individual users. The executable instructions stored in thememory 730 can includeselection instructions 722, which theprocessor 710 executes to select an optimal service provider to service theservice request 782. In doing so, the computer system can receiveservice provider locations 784 of service providers operating throughout the given region, and the processor can execute theselection instructions 722 to select an optimal service provider from a set of available service providers, and transmit aservice invitation 752 to enable the service provider to accept or decline the service offer. - The executable instructions stored in the
memory 720 can also includecost calculation instructions 724, which enable thecomputer system 700 to dynamically compute prices based on an inputted service completion location by the user and a rendezvous location (e.g., based on the user's current location). As described herein, execution of thecost calculation instructions 724 can cause thecomputer system 700 to output an upfront price for each of a plurality of service options, and can further be based on service provider supply for the service option (e.g., with a shortage of supply resulting in a price surge factor). The executable instructions can further includeoptimization instructions 726, which enable thecomputer system 700 to perform cost, wait time, and/or walking distance optimizations (e.g., for a carpooling service option) in order to provide an additional walk/rendezvous service at a reduced cost to the user, as described herein. The results of the price calculations, updates, and optimizations can result incontent updates 754 provided by thecomputer system 700 for display on the requester device.Such content updates 754 can comprise the screens, screen features, or update features of the service application executing on the requester device, including the selectablegraphic features 408 providing price and ETD information for the service options. - By way of example, the instructions and data stored in the
memory 720 can be executed by theprocessor 710 to implement an examplenetwork computer system 100 ofFIG. 1 . In performing the operations, theprocessor 710 can receiveservice requests 782 andservice provider locations 784, and submitservice invitations 752 to facilitate the servicing of therequests 782. Furthermore, execution of thecost calculation instructions 724 andoptimization instructions 726 can cause theprocessor 710 to provide service information for each of the available ride service options managed by thenetwork computer system 100. - The
processor 710 is configured with software and/or other logic to perform one or more processes, steps and other functions described with implementations, such as described byFIGS. 1-6 , and elsewhere in the present application. - Examples described herein are related to the use of the
computer system 700 for implementing the techniques described herein. According to one example, those techniques are performed by thecomputer system 700 in response to theprocessor 710 executing one or more sequences of one or more instructions contained in themain memory 720. Such instructions may be read into themain memory 720 from another machine-readable medium, such as thestorage device 740. Execution of the sequences of instructions contained in themain memory 720 causes theprocessor 710 to perform the process steps described herein. In alternative implementations, hard-wired circuitry may be used in place of or in combination with software instructions to implement examples described herein. Thus, the examples described are not limited to any specific combination of hardware circuitry and software. - It is contemplated for examples described herein to extend to individual elements and concepts described herein, independently of other concepts, ideas or systems, as well as for examples to include combinations of elements recited anywhere in this application. Although examples are described in detail herein with reference to the accompanying drawings, it is to be understood that the concepts are not limited to those precise examples. As such, many modifications and variations will be apparent to practitioners skilled in this art. Accordingly, it is intended that the scope of the concepts be defined by the following claims and their equivalents. Furthermore, it is contemplated that a particular feature described either individually or as part of an example can be combined with other individually described features, or parts of other examples, even if the other features and examples make no mentioned of the particular feature. Thus, the absence of describing combinations should not preclude claiming rights to such combinations.
Claims (20)
1. A network computer system implementing a transport service, comprising:
a network communication interface to communicate, over one or more networks, with (i) computing devices of users of the transport service, and (ii) computing devices of drivers of the transport service;
one or more processors; and
one or more memory resources storing instructions that, when executed by the one or more processors, cause the network computer system to:
receive, over the one or more networks, input data from a computing device of a requesting user of the transport service, the input data corresponding to one or more user interactions on a graphical user interface displayed on the computing device that specify a destination location of the requesting user;
receive, over the one or more networks, location data determined from a location-based resource of the computing device of the requesting user, the location data specifying a current location of the requesting user;
based on the destination location as specified by the input data and the current location of the requesting user as specified in the location data, determine, for each respective transport option of a plurality of transport options, an upfront cost for transporting the requesting user to the specified destination location using the respective transport option, the upfront cost for the respective transport option being further based on a set of cost data associated with the respective transport option;
transmit update data, over the one or more networks, to the computing device of the requesting user, the update data causing the computing device of the requesting user to automatically update the graphical user interface to include a plurality of graphic features indicating the upfront cost for each respective transport option of the plurality of transport options, wherein the graphic feature for each respective transport option is selectable by the requesting user to configure a transport request for the respective transport option to transport the requesting user to the specified destination location;
based, at least in part, on a user selection of the graphic feature of a specified transport option amongst the graphic features of the plurality of transport options generated in the graphical user interface, receive, over the one or more networks, a transport request for the specified transport option from the computing device of the requesting user;
receive, over the one or more networks, driver location data determined from location-based resources of computing devices of one or more available drivers for the specified transport option, the driver location data indicating a current location of each of the one or more available drivers;
select a driver from the one or more available drivers based, at least in part, on the current location of the selected driver and a pickup location of the requesting user; and
transmit a service invitation, over the one or more networks, to the computing device of the selected driver.
2. The network computer system of claim 1 , wherein the executed instructions cause the network computer system to determine a rendezvous point at which the selected driver is to rendezvous with the requesting user to minimize the upfront cost for the specified transport option
3. The network computer system of claim 1 , wherein the executed instructions further cause the network computer system to:
determine an estimated time of completion for a representative driver for the specified transport option.
4. The network computer system of claim 3 , wherein the update data causes the service application to generate the graphic feature for each respective transport option to further include the estimated time of completion for the respective transport option.
5. The network computer system of claim 2 , wherein the executed instructions further cause the network computer system to:
determine, based on location data received from the computing device of the selected driver, a direction of travel of the selected driver;
wherein the executed instructions cause the network computer system to further determine the rendezvous point based at least in part on the direction of travel of the selected driver.
6. The network computer system of claim 1 , wherein the service application further displays a configuration feature to be displayed on the computing device of the requesting user, and wherein the executed instructions further cause the network computer system to:
in response to a user selection of the configuration feature, transmit, over the one or more networks, configuration data to the service application, causing the service application to display a configuration interface on the computing device of the requesting user, the configuration interface including a set of configuration features enabling the requesting user to configure one or more parameters of the specified transport option.
7. The network computer system of claim 6 , wherein the one or more parameters comprise a number of required seats for the specified transport option.
8. The network computer system of claim 7 , wherein the executed instructions further cause the network computer system to:
re-compute the upfront cost of the specified transport option based on the number of required seats selected by the requesting user on the configuration interface; and
update the graphic feature on the computing device of the requesting user to display the re-computed upfront cost.
9. A non-transitory computer readable medium storing instructions that, when executed by one or more processors of a network computer system, cause the network computer system to:
receive, over one or more networks, input data from a computing device of a requesting user of a transport service, the input data corresponding to one or more user interactions on a graphical user interface displayed on the computing device that specify a destination location of the requesting user;
receive, over the one or more networks, location data determined from a location-based resource of the computing device of the requesting user, the location data specifying a current location of the requesting user;
based on the destination location as specified by the input data and the current location of the requesting user as specified in the location data, determine, for each respective transport option of a plurality of transport options, an upfront cost for transporting the requesting user to the specified destination location using the respective transport option, the upfront cost for the respective transport option being further based on a set of cost data associated with the respective transport option;
transmit update data, over the one or more networks, to the computing device of the requesting user, the update data causing the computing device of the requesting user to automatically update the graphical user interface to include a plurality of graphic features indicating the upfront cost for each respective transport option of the plurality of transport options, wherein the graphic feature for each respective transport option is selectable by the requesting user to configure a transport request for the respective transport option to transport the requesting user to the specified destination location;
based, at least in part, on a user selection of the graphic feature of a specified transport option amongst the graphic features of the plurality of transport options generated in the graphical user interface, receive, over the one or more networks, a transport request for the specified transport option from the computing device of the requesting user;
receive, over the one or more networks, driver location data determined from location-based resources of computing devices of one or more available drivers for the specified transport option, the driver location data indicating a current location of each of the one or more available drivers;
select a driver from the one or more available drivers based, at least in part, on the current location of the selected driver and a pickup location of the requesting user; and
transmit a service invitation, over the one or more networks, to the computing device of the selected driver.
10. The non-transitory computer readable medium of claim 9 , wherein the executed instructions cause the network computer system to determine a rendezvous point at which the selected driver is to rendezvous with the requesting user to minimize the upfront cost for the specified transport option
11. The non-transitory computer readable medium of claim 9 , wherein the executed instructions further cause the network computer system to:
determine an estimated time of completion for a representative driver for the specified transport option.
12. The non-transitory computer readable medium of claim 11 , wherein the update data causes the service application to generate the graphic feature for each respective transport option to further include the estimated time of completion for the respective transport option.
13. The non-transitory computer readable medium of claim 10 , wherein the executed instructions further cause the network computer system to:
determine, based on location data received from the computing device of the selected driver, a direction of travel of the selected driver;
wherein the executed instructions cause the network computer system to further determine the rendezvous point based at least in part on the direction of travel of the selected driver.
14. The non-transitory computer readable medium of claim 9 , wherein the service application further displays a configuration feature to be displayed on the computing device of the requesting user, and wherein the executed instructions further cause the network computer system to:
in response to a user selection of the configuration feature, transmit, over the one or more networks, configuration data to the service application, causing the service application to display a configuration interface on the computing device of the requesting user, the configuration interface including a set of configuration features enabling the requesting user to configure one or more parameters of the specified transport option.
15. The non-transitory computer readable medium of claim 14 , wherein the one or more parameters comprise a number of required seats for the specified transport option.
16. The non-transitory computer readable medium of claim 15 , wherein the executed instructions further cause the network computer system to:
re-compute the upfront cost of the specified transport option based on the number of required seats selected by the requesting user on the configuration interface; and
update the graphic feature on the computing device of the requesting user to display the re-computed upfront cost.
17. A computer-implemented method of managing a transport service, the method being performed by one or more processors and comprising:
receiving, over one or more networks, input data from a computing device of a requesting user of the transport service, the input data corresponding to one or more user interactions on a graphical user interface displayed on the computing device that specify a destination location of the requesting user;
receive, over the one or more networks, location data determined from a location-based resource of the computing device of the requesting user, the location data specifying a current location of the requesting user;
based on the destination location as specified by the input data and the current location of the requesting user as specified in the location data, determine, for each respective transport option of a plurality of transport options, an upfront cost for transporting the requesting user to the specified destination location using the respective transport option, the upfront cost for the respective transport option being further based on a set of cost data associated with the respective transport option;
transmit update data, over the one or more networks, to the computing device of the requesting user, the update data causing the computing device of the requesting user to automatically update the graphical user interface to include a plurality of graphic features indicating the upfront cost for each respective transport option of the plurality of transport options, wherein the graphic feature for each respective transport option is selectable by the requesting user to configure a transport request for the respective transport option to transport the requesting user to the specified destination location;
based, at least in part, on a user selection of the graphic feature of a specified transport option amongst the graphic features of the plurality of transport options generated in the graphical user interface, receive, over the one or more networks, a transport request for the specified transport option from the computing device of the requesting user;
receive, over the one or more networks, driver location data determined from location-based resources of computing devices of one or more available drivers for the specified transport option, the driver location data indicating a current location of each of the one or more available drivers;
select a driver from the one or more available drivers based, at least in part, on the current location of the selected driver and a pickup location of the requesting user; and
transmit a service invitation, over the one or more networks, to the computing device of the selected driver.
18. The method of claim 17 , wherein the one or more processors determine a rendezvous point at which the selected driver is to rendezvous with the requesting user to minimize the upfront cost for the specified transport option
19. The method of claim 18 , further comprising:
determining an estimated time of completion for a representative driver for the specified transport option.
20. The method of claim 19 , wherein the update data causes the service application to generate the graphic feature for each respective transport option to further include the estimated time of completion for the respective transport option.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US18/099,820 US20230164228A1 (en) | 2016-09-26 | 2023-01-20 | Service information and configuration user interface |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662399660P | 2016-09-26 | 2016-09-26 | |
US15/395,406 US10425490B2 (en) | 2016-09-26 | 2016-12-30 | Service information and configuration user interface |
US16/444,858 US11601511B2 (en) | 2016-09-26 | 2019-06-18 | Service information and configuration user interface |
US18/099,820 US20230164228A1 (en) | 2016-09-26 | 2023-01-20 | Service information and configuration user interface |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/444,858 Continuation US11601511B2 (en) | 2016-09-26 | 2019-06-18 | Service information and configuration user interface |
Publications (1)
Publication Number | Publication Date |
---|---|
US20230164228A1 true US20230164228A1 (en) | 2023-05-25 |
Family
ID=61685833
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/395,406 Active US10425490B2 (en) | 2016-09-26 | 2016-12-30 | Service information and configuration user interface |
US16/444,858 Active 2038-09-07 US11601511B2 (en) | 2016-09-26 | 2019-06-18 | Service information and configuration user interface |
US18/099,820 Pending US20230164228A1 (en) | 2016-09-26 | 2023-01-20 | Service information and configuration user interface |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/395,406 Active US10425490B2 (en) | 2016-09-26 | 2016-12-30 | Service information and configuration user interface |
US16/444,858 Active 2038-09-07 US11601511B2 (en) | 2016-09-26 | 2019-06-18 | Service information and configuration user interface |
Country Status (1)
Country | Link |
---|---|
US (3) | US10425490B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11924308B2 (en) | 2017-08-11 | 2024-03-05 | Uber Technologies, Inc. | Dynamic scheduling system for planned service requests |
Families Citing this family (90)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8676904B2 (en) | 2008-10-02 | 2014-03-18 | Apple Inc. | Electronic devices with voice command and contextual data processing capabilities |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
CN113470640B (en) | 2013-02-07 | 2022-04-26 | 苹果公司 | Voice trigger of digital assistant |
US11574263B2 (en) | 2013-03-15 | 2023-02-07 | Via Transportation, Inc. | System and method for providing multiple transportation proposals to a user |
US10458801B2 (en) | 2014-05-06 | 2019-10-29 | Uber Technologies, Inc. | Systems and methods for travel planning that calls for at least one transportation vehicle unit |
US9552559B2 (en) | 2014-05-06 | 2017-01-24 | Elwha Llc | System and methods for verifying that one or more directives that direct transport of a second end user does not conflict with one or more obligations to transport a first end user |
US9715875B2 (en) | 2014-05-30 | 2017-07-25 | Apple Inc. | Reducing the need for manual start/end-pointing and trigger phrases |
US10170123B2 (en) | 2014-05-30 | 2019-01-01 | Apple Inc. | Intelligent assistant for home automation |
US9338493B2 (en) | 2014-06-30 | 2016-05-10 | Apple Inc. | Intelligent automated assistant for TV user interactions |
SG11201700671PA (en) | 2014-08-04 | 2017-02-27 | Uber Technologies Inc | Determining and providing predetermined location data points to service providers |
WO2016029168A1 (en) | 2014-08-21 | 2016-02-25 | Uber Technologies, Inc. | Arranging a transport service for a user based on the estimated time of arrival of the user |
JP6382745B2 (en) * | 2015-02-23 | 2018-08-29 | Line株式会社 | Ride-on support device and program to support ride-on |
US9886953B2 (en) | 2015-03-08 | 2018-02-06 | Apple Inc. | Virtual assistant activation |
US10747498B2 (en) | 2015-09-08 | 2020-08-18 | Apple Inc. | Zero latency digital assistant |
US10691473B2 (en) | 2015-11-06 | 2020-06-23 | Apple Inc. | Intelligent automated assistant in a messaging environment |
US9939279B2 (en) | 2015-11-16 | 2018-04-10 | Uber Technologies, Inc. | Method and system for shared transport |
US10685416B2 (en) | 2015-12-10 | 2020-06-16 | Uber Technologies, Inc. | Suggested pickup location for ride services |
US10242574B2 (en) | 2016-03-21 | 2019-03-26 | Uber Technologies, Inc. | Network computer system to address service providers to contacts |
DK201670540A1 (en) | 2016-06-11 | 2018-01-08 | Apple Inc | Application integration with a digital assistant |
US10425490B2 (en) | 2016-09-26 | 2019-09-24 | Uber Technologies, Inc. | Service information and configuration user interface |
US10477504B2 (en) * | 2016-09-26 | 2019-11-12 | Uber Technologies, Inc. | Network service over limited network connectivity |
US10417727B2 (en) | 2016-09-26 | 2019-09-17 | Uber Technologies, Inc. | Network system to determine accelerators for selection of a service |
US10764155B2 (en) * | 2016-11-29 | 2020-09-01 | CloudSmartz, Inc. | System and method for on-demand network communication |
US11334959B2 (en) * | 2016-12-05 | 2022-05-17 | Conduent Business Services, Llc | Method and system for managing allocation of transportation services |
USD848463S1 (en) * | 2016-12-30 | 2019-05-14 | Lyft, Inc. | Display screen or portion thereof with graphical user interface |
USD848462S1 (en) * | 2016-12-30 | 2019-05-14 | Lyft, Inc. | Display screen or portion thereof with graphical user interface |
USD862506S1 (en) * | 2016-12-30 | 2019-10-08 | Lyft, Inc. | Display screen or portion thereof with graphical user interface |
US10890457B2 (en) | 2017-01-13 | 2021-01-12 | Uber Technologies, Inc. | Method and system for repositioning a service location |
US20180209803A1 (en) * | 2017-01-25 | 2018-07-26 | Via Transportation, Inc. | Dynamic Route Planning |
US10749819B2 (en) | 2017-02-07 | 2020-08-18 | Thumbtack, Inc. | Automatically generating a response on behalf of a first user to a request received from a second user |
US9898791B1 (en) | 2017-02-14 | 2018-02-20 | Uber Technologies, Inc. | Network system to filter requests by destination and deadline |
US10963824B2 (en) | 2017-03-23 | 2021-03-30 | Uber Technologies, Inc. | Associating identifiers based on paired data sets |
US11087287B2 (en) | 2017-04-28 | 2021-08-10 | Uber Technologies, Inc. | System and method for generating event invitations to specified recipients |
DK180048B1 (en) | 2017-05-11 | 2020-02-04 | Apple Inc. | MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION |
DK179496B1 (en) | 2017-05-12 | 2019-01-15 | Apple Inc. | USER-SPECIFIC Acoustic Models |
DK201770429A1 (en) | 2017-05-12 | 2018-12-14 | Apple Inc. | Low-latency intelligent automated assistant |
US11361594B1 (en) * | 2017-05-17 | 2022-06-14 | Wells Fargo Bank, N.A. | Utilization of free time in autonomous vehicles |
US11493348B2 (en) * | 2017-06-23 | 2022-11-08 | Direct Current Capital LLC | Methods for executing autonomous rideshare requests |
US10699316B2 (en) * | 2017-06-30 | 2020-06-30 | Thumbtack, Inc. | Matching a request from a user to a set of different users for responding to the request |
WO2019023324A1 (en) | 2017-07-26 | 2019-01-31 | Via Transportation, Inc. | Systems and methods for managing and routing ridesharing vehicles |
US10872134B2 (en) * | 2017-08-07 | 2020-12-22 | Ridemites Group, Inc. | Method and system for identifying pre-identified or pre-selected groups of individuals for transportation |
CN108009651A (en) * | 2017-08-16 | 2018-05-08 | 北京嘀嘀无限科技发展有限公司 | Order processing method, apparatus, terminal device and computer-readable recording medium |
US10731998B2 (en) | 2017-11-05 | 2020-08-04 | Uber Technologies, Inc. | Network computer system to arrange pooled transport services |
US10559211B2 (en) | 2017-11-27 | 2020-02-11 | Uber Technologies, Inc. | Real-time service provider progress monitoring |
KR102529911B1 (en) * | 2017-12-13 | 2023-05-08 | 현대자동차주식회사 | Apparatus for providing car service, system having the same and method thereof |
WO2019136341A1 (en) | 2018-01-08 | 2019-07-11 | Via Transportation, Inc. | Systems and methods for managing and scheduling ridesharing vehicles |
US11797937B2 (en) | 2018-02-26 | 2023-10-24 | Mark Lamoncha | System and method for hiring and authenticating persons to perform services on a temporary basis |
WO2019191914A1 (en) * | 2018-04-04 | 2019-10-10 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for on-demand services |
EP3776395A1 (en) | 2018-04-09 | 2021-02-17 | Via Transportation, Inc. | Systems and methods for planning transportation routes |
US11145294B2 (en) | 2018-05-07 | 2021-10-12 | Apple Inc. | Intelligent automated assistant for delivering content from user experiences |
US10928918B2 (en) | 2018-05-07 | 2021-02-23 | Apple Inc. | Raise to speak |
DK180639B1 (en) | 2018-06-01 | 2021-11-04 | Apple Inc | DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT |
USD950587S1 (en) | 2018-08-31 | 2022-05-03 | Zoox, Inc. | Display screen or portion thereof having a graphical user interface |
US11462215B2 (en) | 2018-09-28 | 2022-10-04 | Apple Inc. | Multi-modal inputs for voice commands |
US10553119B1 (en) * | 2018-10-04 | 2020-02-04 | Allstate Insurance Company | Roadside assistance system |
US20200124426A1 (en) * | 2018-10-17 | 2020-04-23 | Here Global B.V. | Method and apparatus for routing a user and a vehicle to a destination |
USD948543S1 (en) | 2018-10-26 | 2022-04-12 | Hvr Mso Llc | Display screen or portion thereof with a graphical user interface |
US10675205B1 (en) * | 2018-11-20 | 2020-06-09 | Toyota Mobility Foundation | Transportation support for a user having chronic or acute mobility needs |
USD926780S1 (en) * | 2018-12-20 | 2021-08-03 | Google Llc | Display screen with graphical user interface |
CN111383073B (en) * | 2018-12-31 | 2024-04-26 | 北京嘀嘀无限科技发展有限公司 | Multi-user sharing method and system thereof |
US11047700B2 (en) | 2019-02-01 | 2021-06-29 | Uber Technologies, Inc. | Navigation and routing based on image data |
US11348573B2 (en) | 2019-03-18 | 2022-05-31 | Apple Inc. | Multimodality in digital assistant systems |
US11307752B2 (en) | 2019-05-06 | 2022-04-19 | Apple Inc. | User configurable task triggers |
DK201970509A1 (en) | 2019-05-06 | 2021-01-15 | Apple Inc | Spoken notifications |
US11140099B2 (en) | 2019-05-21 | 2021-10-05 | Apple Inc. | Providing message response suggestions |
US11468890B2 (en) | 2019-06-01 | 2022-10-11 | Apple Inc. | Methods and user interfaces for voice-based control of electronic devices |
US11482111B2 (en) | 2019-07-17 | 2022-10-25 | Uber Technologies, Inc. | Computing timing intervals for vehicles through directional route corridors |
US11733046B2 (en) * | 2019-10-07 | 2023-08-22 | Lyft, Inc. | Multi-modal transportation proposal generation |
US11226208B2 (en) | 2019-10-07 | 2022-01-18 | Lyft, Inc. | Transportation route planning and generation |
US10746555B1 (en) | 2019-10-07 | 2020-08-18 | Lyft, Inc. | Multi-modal transportation route deviation detection and correction |
US11733049B2 (en) | 2019-10-07 | 2023-08-22 | Lyft, Inc. | Multi-modal transportation system |
US11788852B2 (en) | 2019-11-28 | 2023-10-17 | Toyota Motor North America, Inc. | Sharing of transport user profile |
US11388582B2 (en) * | 2019-11-28 | 2022-07-12 | Toyota Motor North America, Inc. | Providing media based on profile sharing |
US20220351624A1 (en) * | 2019-12-13 | 2022-11-03 | Arual Siva MURUGAN. V | System and method to manage first and last mile connectivity service of a trip |
US11570276B2 (en) | 2020-01-17 | 2023-01-31 | Uber Technologies, Inc. | Forecasting requests based on context data for a network-based service |
US11669786B2 (en) | 2020-02-14 | 2023-06-06 | Uber Technologies, Inc. | On-demand transport services |
US11657441B2 (en) | 2020-04-03 | 2023-05-23 | Toyota Motor North America, Inc. | Profile-based service for transports |
JP7275330B2 (en) * | 2020-04-30 | 2023-05-17 | Line株式会社 | program, information processing method, terminal |
US11061543B1 (en) | 2020-05-11 | 2021-07-13 | Apple Inc. | Providing relevant data items based on context |
US20210365161A1 (en) * | 2020-05-22 | 2021-11-25 | Apple Inc. | Digital assistant user interfaces and response modes |
JP7327282B2 (en) * | 2020-05-29 | 2023-08-16 | トヨタ自動車株式会社 | SERVER DEVICE, PROGRAM, AND OPERATION METHOD OF SERVER DEVICE |
US10929156B1 (en) * | 2020-06-09 | 2021-02-23 | Uber Technologies, Inc. | Pre-generating data for user interface latency improvement |
US11285968B2 (en) * | 2020-06-30 | 2022-03-29 | Waymo Llc | Roadside assistance for autonomous vehicles |
CN111861650A (en) * | 2020-07-09 | 2020-10-30 | 北京嘀嘀无限科技发展有限公司 | Information display method, first service request terminal, system and electronic equipment |
US11490204B2 (en) | 2020-07-20 | 2022-11-01 | Apple Inc. | Multi-device audio adjustment coordination |
US11438683B2 (en) | 2020-07-21 | 2022-09-06 | Apple Inc. | User identification using headphones |
US20220101208A1 (en) * | 2020-09-30 | 2022-03-31 | Lyft, Inc. | Providing ephemeral-transportation options in real time for sharing active transportations |
US20220371618A1 (en) * | 2021-05-19 | 2022-11-24 | Waymo Llc | Arranging trips for autonomous vehicles based on weather conditions |
CN116033544A (en) * | 2021-10-26 | 2023-04-28 | 华为终端有限公司 | Indoor parking lot positioning method, computer device, storage medium and program product |
CN115640151B (en) * | 2022-11-08 | 2024-02-27 | 首约科技(北京)有限公司 | Service calling method, device and storage medium |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130132140A1 (en) * | 2009-12-04 | 2013-05-23 | Uber Technologies, Inc. | Determining a location related to on-demand services through use of portable computing devices |
US20150161564A1 (en) * | 2013-12-11 | 2015-06-11 | Uber Technologies, Inc. | System and method for optimizing selection of drivers for transport requests |
US20150248689A1 (en) * | 2014-03-03 | 2015-09-03 | Sunil Paul | Systems and methods for providing transportation discounts |
US20160370194A1 (en) * | 2015-06-22 | 2016-12-22 | Google Inc. | Determining Pickup and Destination Locations for Autonomous Vehicles |
US20180189918A1 (en) * | 2016-06-13 | 2018-07-05 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for recommending recommended service location |
Family Cites Families (173)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5557522A (en) | 1993-09-10 | 1996-09-17 | Nissan Motor Co., Ltd. | Apparatus and method for guiding vehicle occupant to travel from present position of vehicle to set destination through display unit |
US5948040A (en) | 1994-06-24 | 1999-09-07 | Delorme Publishing Co. | Travel reservation information and planning system |
US6321158B1 (en) | 1994-06-24 | 2001-11-20 | Delorme Publishing Company | Integrated routing/mapping information |
US6233517B1 (en) | 1996-02-27 | 2001-05-15 | Trimble Navigation Limited | Predictive model for automated vehicle recommendation system |
JP3745472B2 (en) | 1996-11-18 | 2006-02-15 | 三菱電機株式会社 | Self-propelled vehicle, autonomous guidance device, and automatic transfer device |
US9075136B1 (en) | 1998-03-04 | 2015-07-07 | Gtj Ventures, Llc | Vehicle operator and/or occupant information apparatus and method |
ES2425056T3 (en) | 1998-07-20 | 2013-10-11 | Unwired Planet, Llc | Subscriber-based location-based services |
US7822823B2 (en) | 1999-12-14 | 2010-10-26 | Neeraj Jhanji | Systems for communicating current and future activity information among mobile internet users and methods therefor |
WO2002006994A2 (en) | 2000-07-14 | 2002-01-24 | Sunil Paul | System and method for determining an efficient transportation route |
US20020034292A1 (en) | 2000-08-22 | 2002-03-21 | Tuoriniemi Veijo M. | System and a method to match demand and supply based on geographical location derived from a positioning system |
US20070150375A1 (en) | 2000-12-08 | 2007-06-28 | Ping Yang | Method and apparatus for efficient meal delivery |
US6668177B2 (en) | 2001-04-26 | 2003-12-23 | Nokia Corporation | Method and apparatus for displaying prioritized icons in a mobile terminal |
US6744753B2 (en) | 2001-11-01 | 2004-06-01 | Nokia Corporation | Local service handover |
GB0126809D0 (en) | 2001-11-07 | 2002-01-02 | Isaac Stephen J | A car-sharing system |
JP3934985B2 (en) | 2002-04-19 | 2007-06-20 | 富士通テン株式会社 | Taxi dispatch method |
AU2003258018A1 (en) * | 2002-08-02 | 2004-02-23 | Limoq, Inc. | Method, system and apparatus for providing transportation services |
JP3940049B2 (en) | 2002-08-21 | 2007-07-04 | 京楽産業.株式会社 | Pachinko machine |
US7171226B2 (en) | 2002-11-19 | 2007-01-30 | General Motors Corporation | Communication retry method over digital wireless systems |
JP3730967B2 (en) | 2003-03-20 | 2006-01-05 | 株式会社エヌ・ティ・ティ・ドコモ | Vehicle allocation system and management server |
US7519916B1 (en) | 2003-06-16 | 2009-04-14 | Microsoft Corporation | Methods for tailoring a bandwidth profile for an operating environment |
US20050177799A1 (en) | 2004-02-05 | 2005-08-11 | Knight Juliet F. | Method of associating an icon with a temporary profile |
US7624024B2 (en) | 2005-04-18 | 2009-11-24 | United Parcel Service Of America, Inc. | Systems and methods for dynamically updating a dispatch plan |
US7660851B2 (en) | 2005-07-06 | 2010-02-09 | Microsoft Corporation | Meetings near me |
US20160027307A1 (en) | 2005-12-23 | 2016-01-28 | Raj V. Abhyanker | Short-term automobile rentals in a geo-spatial environment |
KR100760116B1 (en) | 2006-02-03 | 2007-09-18 | 엘지전자 주식회사 | Method for changing map scale in navigation system |
JP2008216205A (en) | 2007-03-07 | 2008-09-18 | Fujitsu Ltd | On-vehicle navigation device |
US7756633B2 (en) | 2007-05-11 | 2010-07-13 | Palo Alto Research Center Incorporated | System and method for security enhanced rideshare |
US9990655B2 (en) | 2007-08-24 | 2018-06-05 | Iheartmedia Management Services, Inc. | Live media stream including personalized notifications |
US20090113296A1 (en) | 2007-10-26 | 2009-04-30 | Microsoft Corporation | Displaying a map and associated symbolic context information |
WO2009079469A1 (en) | 2007-12-14 | 2009-06-25 | Promptu Systems Corporation | Automatic service vehicle hailing and dispatch system and method |
US7822426B1 (en) | 2008-01-17 | 2010-10-26 | Where, Inc. | System and method for snapping a user location to a landmark of known location |
US20090216600A1 (en) | 2008-02-27 | 2009-08-27 | Montiss Llc | Systems and methods for arranging a transport transaction |
FR2932305B1 (en) | 2008-06-10 | 2010-07-30 | Pierre Braunwald | METHOD FOR CONNECTING A TRANSPORT SERVICE REQUEST ISSUED BY A PASSENGER WITH AN OFFER OF SUCH SERVICE ISSUED BY A DRIVER |
US9519921B2 (en) | 2008-06-27 | 2016-12-13 | E-Lantis Corporation | GPS and wireless integrated fleet management system and method |
US20100076795A1 (en) * | 2008-09-17 | 2010-03-25 | Robert Steir | Offering acquired air transport rights and sharing resulting revenues |
US8798914B2 (en) * | 2009-01-13 | 2014-08-05 | Qualcomm Incorporated | Navigating at a wireless device |
JP2010208195A (en) | 2009-03-11 | 2010-09-24 | Mitsubishi Paper Mills Ltd | Inkjet recording material |
US20120309363A1 (en) | 2011-06-03 | 2012-12-06 | Apple Inc. | Triggering notifications associated with tasks items that represent tasks to perform |
US8276378B2 (en) | 2009-07-22 | 2012-10-02 | GM Global Technology Operations LLC | System and method for controlling a two-stage series sequential turbocharger using bypass valve leakage control |
US8825381B2 (en) | 2009-08-05 | 2014-09-02 | Telenav, Inc. | Navigation system with single initiation mechanism and method of operation thereof |
KR20110024979A (en) | 2009-09-03 | 2011-03-09 | 엘지전자 주식회사 | Service providing system and method thereof |
US10002198B2 (en) | 2009-10-28 | 2018-06-19 | Verizon Patent And Licensing Inc. | Mobile taxi dispatch system |
US8126903B2 (en) | 2009-12-21 | 2012-02-28 | Sap Ag | Computer implemented method for allocating drivers and passengers sharing a trip |
EE01148U1 (en) | 2009-12-03 | 2013-01-15 | T+1 Solutions O� | A method of ordering a taxi service in a telecommunications system |
US20130246301A1 (en) | 2009-12-04 | 2013-09-19 | Uber Technologies, Inc. | Providing user feedback for transport services through use of mobile devices |
US9230292B2 (en) * | 2012-11-08 | 2016-01-05 | Uber Technologies, Inc. | Providing on-demand services through use of portable computing devices |
US8200247B1 (en) | 2010-02-08 | 2012-06-12 | Google Inc. | Confirming a venue of user location |
US8392116B2 (en) | 2010-03-24 | 2013-03-05 | Sap Ag | Navigation device and method for predicting the destination of a trip |
WO2011132181A1 (en) | 2010-04-21 | 2011-10-27 | Markport Limited | A method and system for messaging in event of congestion in mobile networks |
KR101132496B1 (en) | 2010-06-30 | 2012-03-30 | 엔에이치엔(주) | System and method for calculating move necessary time considering waiting time |
JP5659829B2 (en) | 2010-09-03 | 2015-01-28 | 株式会社デンソーウェーブ | Input control device for touch panel type input terminal |
US20120130627A1 (en) | 2010-11-23 | 2012-05-24 | Islam Mohammad R | Taxi dispatch system |
US20130132246A1 (en) | 2010-12-06 | 2013-05-23 | Uber Technologies, Inc. | Providing a summary or receipt for on-demand services through use of portable computing devices |
US20120150436A1 (en) | 2010-12-10 | 2012-06-14 | Volkswagen Ag | Method for Displaying a Travel Route |
US8639719B2 (en) | 2011-02-02 | 2014-01-28 | Paul Tepper Fisher | System and method for metadata capture, extraction and analysis |
US20160078374A1 (en) | 2011-07-13 | 2016-03-17 | Google Inc. | Graphical user interface for hotel search systems |
US20130073327A1 (en) | 2011-09-20 | 2013-03-21 | Benjamin J. Edelberg | Urban transportation system and method |
US8843409B2 (en) | 2011-10-07 | 2014-09-23 | Webcetera, L.P. | Policy event management system and method |
US20130138723A1 (en) | 2011-11-30 | 2013-05-30 | Microsoft Corporation | Dynamic browser icons |
US20130159028A1 (en) | 2011-12-19 | 2013-06-20 | Sap Ag | Raising User Satisfaction in an Automated Ride Sharing System |
US9785920B2 (en) | 2012-01-18 | 2017-10-10 | Square, Inc. | Acquisition of card information to enhance user experience |
US9305310B2 (en) | 2012-03-19 | 2016-04-05 | Uber Technologies, Inc. | Enabling a user to verify a price change for an on-demand service |
US9215590B2 (en) | 2012-04-20 | 2015-12-15 | Bank Of America Corporation | Authentication using vehicle data pairing |
US9477983B2 (en) | 2012-05-04 | 2016-10-25 | Gt Gettaxi Limited | Mechanisms for ordering transportation vehicles |
US10417037B2 (en) | 2012-05-15 | 2019-09-17 | Apple Inc. | Systems and methods for integrating third party services with a digital assistant |
US9066206B2 (en) | 2012-07-03 | 2015-06-23 | Uber Technologies, Inc. | System and method for providing dynamic supply positioning for on-demand services |
US20140082069A1 (en) | 2012-09-17 | 2014-03-20 | Apple Inc. | Automated coordination of ride sharing between members of social group |
WO2014045359A1 (en) | 2012-09-20 | 2014-03-27 | トヨタ自動車株式会社 | On-demand vehicle operation management device, on-demand vehicle operation management method, and on-demand vehicle operation management system |
GB201218680D0 (en) | 2012-10-17 | 2012-11-28 | Tomtom Int Bv | Methods and systems of providing information using a navigation apparatus |
EP2918068A4 (en) | 2012-11-08 | 2016-03-30 | Uber Technologies Inc | Providing on-demand services through use of portable computing devices |
US9671233B2 (en) | 2012-11-08 | 2017-06-06 | Uber Technologies, Inc. | Dynamically providing position information of a transit object to a computing device |
US9160698B2 (en) | 2012-11-09 | 2015-10-13 | The Rocket Science Group Llc | Methods and systems for providing information relating to an event |
US9444859B2 (en) | 2012-12-06 | 2016-09-13 | At&T Intellectual Property I, L.P. | Event management system |
GB201300006D0 (en) | 2013-01-01 | 2013-02-13 | Tomtom Dev Germany Gmbh | Vehicle management system |
US20140195972A1 (en) | 2013-01-07 | 2014-07-10 | Electronics And Telecommunications Research Institute | Method and apparatus for managing programs or icons |
US9294980B2 (en) | 2013-03-14 | 2016-03-22 | At&T Mobility Ii Llc | Apparatus and method for management of service requests in an overload environment |
US10467554B2 (en) | 2013-03-14 | 2019-11-05 | Lyft, Inc. | System for connecting a driver and a rider |
US11574263B2 (en) | 2013-03-15 | 2023-02-07 | Via Transportation, Inc. | System and method for providing multiple transportation proposals to a user |
DE102013006026A1 (en) | 2013-04-08 | 2014-10-09 | Audi Ag | Orientation zoom in navigation maps when displayed on small screens |
US20140365250A1 (en) | 2013-06-05 | 2014-12-11 | Fujitsu Limited | Transportation service reservation method and apparatus |
US9267805B2 (en) | 2013-06-07 | 2016-02-23 | Apple Inc. | Modeling significant locations |
US20150006072A1 (en) | 2013-06-30 | 2015-01-01 | Jeremy Kasile Goldberg | Dynamically Optimized Transportation System |
CA2917186C (en) | 2013-07-03 | 2022-06-21 | Uber Technologies, Inc. | System and method for splitting a fee for an on-demand service |
US9158414B1 (en) | 2013-07-09 | 2015-10-13 | Google Inc. | System and method for indicating a selected feature of an interactive digital map |
US10068205B2 (en) | 2013-07-30 | 2018-09-04 | Delonaco Limited | Social event scheduler |
US20150067878A1 (en) | 2013-09-05 | 2015-03-05 | Chad Steelberg | Apparatus, system, and method for obfuscation and de-obfuscation of digital content |
US20150081362A1 (en) | 2013-09-13 | 2015-03-19 | Stephen C. Chadwick | Context-aware distributive taxi cab dispatching |
KR101773730B1 (en) | 2013-10-04 | 2017-08-31 | 우버 테크놀로지스, 인크. | Determining location information using a location data point provided by a computing device |
CN104575072A (en) | 2013-10-29 | 2015-04-29 | 西安景行数创信息科技有限公司 | Intelligent auxiliary path selection device for taxi based on cloud platform |
US9922469B1 (en) | 2013-11-07 | 2018-03-20 | XL Hybrids | Route-based vehicle selection |
KR102131826B1 (en) | 2013-11-21 | 2020-07-09 | 엘지전자 주식회사 | Mobile terminal and controlling method thereof |
CA2932917A1 (en) | 2013-12-11 | 2015-06-18 | Uber Technologies, Inc. | Intelligent queuing for user selection in providing on-demand services |
WO2015099679A1 (en) | 2013-12-23 | 2015-07-02 | Intel Corporation | In-vehicle authorization for autonomous vehicles |
US9304009B2 (en) | 2014-02-04 | 2016-04-05 | Here Global B.V. | Method and apparatus for providing passenger embarkation points for points of interests |
GB2522708A (en) | 2014-02-04 | 2015-08-05 | Jaguar Land Rover Ltd | User content analysis |
US20150254581A1 (en) | 2014-03-04 | 2015-09-10 | iCarpool, Inc. | Rideshare system and method to facilitate instant carpooling |
US10713686B2 (en) | 2014-03-22 | 2020-07-14 | Retailmenot, Inc. | Peer-to-peer geotargeting content with ad-hoc mesh networks |
EP2924663B1 (en) | 2014-03-26 | 2019-10-23 | Airbus Operations GmbH | Automatic head count determination on board an aircraft |
US9898759B2 (en) | 2014-03-28 | 2018-02-20 | Joseph Khoury | Methods and systems for collecting driving information and classifying drivers and self-driving systems |
TW201541393A (en) | 2014-04-21 | 2015-11-01 | Wei-Yen Yeh | Taxi management equipment and taxi management system |
US20150317568A1 (en) | 2014-04-30 | 2015-11-05 | Xerox Corporation | System and method for flexible carpooling in a work context |
US9631933B1 (en) | 2014-05-23 | 2017-04-25 | Google Inc. | Specifying unavailable locations for autonomous vehicles |
US9679489B2 (en) | 2014-07-22 | 2017-06-13 | Lyft, Inc. | Ride chaining |
US20160026936A1 (en) | 2014-07-25 | 2016-01-28 | Facebook, Inc. | Event-based ridesharing |
AU2015296265A1 (en) | 2014-07-30 | 2017-02-16 | Uber Technologies, Inc. | Arranging a transport service for multiple users |
SG11201700671PA (en) | 2014-08-04 | 2017-02-27 | Uber Technologies Inc | Determining and providing predetermined location data points to service providers |
US20160042303A1 (en) | 2014-08-05 | 2016-02-11 | Qtech Partners LLC | Dispatch system and method of dispatching vehicles |
US20160048804A1 (en) * | 2014-08-14 | 2016-02-18 | Sunil Paul | Systems and methods for transportation services for package delivery |
CA2958776C (en) | 2014-09-05 | 2020-02-18 | Uber Technologies, Inc. | Providing route information to devices during a shared transport service |
US9424748B2 (en) | 2014-09-09 | 2016-08-23 | Here Global B.V. | Reporting traffic conditions on road segments containing a bottleneck |
US10285038B2 (en) | 2014-10-10 | 2019-05-07 | Yaana Technologies, Inc. | Method and system for discovering user equipment in a network |
US20160104112A1 (en) | 2014-10-13 | 2016-04-14 | Marc Gorlin | Peer to Peer Delivery System |
US20160140789A1 (en) | 2014-11-14 | 2016-05-19 | Retailmenot, Inc. | Group-decision engine |
US9384505B1 (en) | 2014-12-12 | 2016-07-05 | Laura Cao | System and method for image based viewing and ordering |
US10225365B1 (en) | 2014-12-19 | 2019-03-05 | Amazon Technologies, Inc. | Machine learning based content delivery |
US11187544B2 (en) | 2014-12-30 | 2021-11-30 | Ebay Inc. | Determining and dispatching a ride-share vehicle |
CA3007343A1 (en) | 2015-01-08 | 2016-07-14 | Uber Technologies, Inc. | Providing information about a proposed service for a user based on user-specific location information |
WO2016113602A1 (en) | 2015-01-12 | 2016-07-21 | Yogesh Chunilal Rathod | Real-time presenting on-demand service providers and users or customers and facilitating them |
US9197696B1 (en) | 2015-01-19 | 2015-11-24 | Vuclip | Offline content distribution networks |
AU2016212530A1 (en) | 2015-01-27 | 2017-08-17 | Beijing Didi Infinity Technology And Development Co., Ltd. | Methods and systems for providing information for an on-demand service |
JP6191632B2 (en) | 2015-02-16 | 2017-09-06 | トヨタ自動車株式会社 | Vehicle cowl structure |
AU2016250168A1 (en) | 2015-04-13 | 2017-10-26 | Uber Technologies, Inc. | Fare determination system for on-demand transport arrangement service |
CN104931063B (en) | 2015-04-29 | 2020-08-11 | 腾讯科技(深圳)有限公司 | Path planning method |
US20160321771A1 (en) | 2015-04-29 | 2016-11-03 | Ford Global Technologies, Llc | Ride-sharing range contours |
US20160320195A1 (en) | 2015-04-29 | 2016-11-03 | Ford Global Technologies, Llc | Ride-sharing long-term ride-share groups |
US20160320198A1 (en) | 2015-04-29 | 2016-11-03 | Ford Global Technologies, Llc | Ride-sharing routing using contextual constraints |
US9562785B1 (en) | 2015-07-20 | 2017-02-07 | Via Transportation, Inc. | Continuously updatable computer-generated routes with continuously configurable virtual bus stops for passenger ride-sharing of a fleet of ride-sharing vehicles and computer transportation systems and computer-implemented methods for use thereof |
US9805605B2 (en) | 2015-08-12 | 2017-10-31 | Madhusoodhan Ramanujam | Using autonomous vehicles in a taxi service |
US9933271B2 (en) | 2015-08-21 | 2018-04-03 | Gt Gettaxi Limited | System for directing a driver to a passenger based on a destination location specified by the driver |
US20170059347A1 (en) * | 2015-08-28 | 2017-03-02 | Google Inc. | Determining Improved Pick-Up Locations |
US9754338B2 (en) | 2015-10-09 | 2017-09-05 | Gt Gettaxi Limited | System to facilitate a correct identification of a service provider |
CN105282251B (en) | 2015-10-30 | 2018-12-11 | 小米科技有限责任公司 | Chauffeur method and apparatus |
US10467561B2 (en) | 2015-11-05 | 2019-11-05 | Gt Gettaxi Limited | System for identifying events and preemptively navigating drivers to transport passengers from the events |
US10685297B2 (en) | 2015-11-23 | 2020-06-16 | Google Llc | Automatic booking of transportation based on context of a user of a computing device |
US9613386B1 (en) | 2015-12-01 | 2017-04-04 | Google Inc. | Pickup and drop off zones for autonomous vehicles |
US9702714B2 (en) | 2015-12-03 | 2017-07-11 | International Business Machines Corporation | Routing of vehicle for hire to dynamic pickup location |
US10685416B2 (en) | 2015-12-10 | 2020-06-16 | Uber Technologies, Inc. | Suggested pickup location for ride services |
US20170169366A1 (en) * | 2015-12-14 | 2017-06-15 | Google Inc. | Systems and Methods for Adjusting Ride-Sharing Schedules and Routes |
US9953389B2 (en) | 2015-12-29 | 2018-04-24 | Gt Gettaxi Limited | System for preemptively navigating drivers to passengers based on passenger device activity |
US10794713B2 (en) | 2015-12-31 | 2020-10-06 | Lyft, Inc. | System for navigating drivers to passengers based on start times of events |
US20170193458A1 (en) | 2015-12-31 | 2017-07-06 | Juno Lab, Inc. | System for providing future transportation request reservations |
US20170213308A1 (en) | 2016-01-26 | 2017-07-27 | GM Global Technology Operations LLC | Arbitration of passenger pickup and drop-off and vehicle routing in an autonomous vehicle based transportation system |
US11049059B2 (en) | 2016-02-03 | 2021-06-29 | Operr Technologies, Inc | Method and system for on-demand customized services |
US10088846B2 (en) | 2016-03-03 | 2018-10-02 | GM Global Technology Operations LLC | System and method for intended passenger detection |
JP2017157501A (en) | 2016-03-04 | 2017-09-07 | 住友電装株式会社 | connector |
US9836057B2 (en) | 2016-03-24 | 2017-12-05 | Waymo Llc | Arranging passenger pickups for autonomous vehicles |
US10042055B2 (en) | 2016-04-20 | 2018-08-07 | Here Global B.V. | Traffic volume estimation |
JP6338159B2 (en) | 2016-05-19 | 2018-06-06 | 本田技研工業株式会社 | Traffic situation estimation device, vehicle control system, route guidance device, traffic situation estimation method, and traffic situation estimation program |
US10820154B2 (en) * | 2016-06-13 | 2020-10-27 | International Business Machines Corporation | Location-based home screen customization |
EP3472563A1 (en) | 2016-06-21 | 2019-04-24 | Via Transportation, Inc. | Systems and methods for vehicle ridesharing management |
US10425490B2 (en) | 2016-09-26 | 2019-09-24 | Uber Technologies, Inc. | Service information and configuration user interface |
US10417727B2 (en) | 2016-09-26 | 2019-09-17 | Uber Technologies, Inc. | Network system to determine accelerators for selection of a service |
US10477504B2 (en) | 2016-09-26 | 2019-11-12 | Uber Technologies, Inc. | Network service over limited network connectivity |
US20180131767A1 (en) | 2016-11-07 | 2018-05-10 | Ford Global Technologies, Llc | Autonomous vehicle management |
US9715233B1 (en) | 2016-11-09 | 2017-07-25 | Ben Mandeville-Clarke | System and method for inputting a second taxi-start location parameter for an autonomous vehicle to navigate to whilst reducing distraction |
US11334959B2 (en) | 2016-12-05 | 2022-05-17 | Conduent Business Services, Llc | Method and system for managing allocation of transportation services |
US20180156623A1 (en) | 2016-12-05 | 2018-06-07 | Microsoft Technology Licensing, Llc | Generating travel instructions in multimodal transportation scenarios |
US10140856B2 (en) | 2016-12-06 | 2018-11-27 | Here Global B.V. | Automatic detection of lane closures using probe data |
US10890457B2 (en) | 2017-01-13 | 2021-01-12 | Uber Technologies, Inc. | Method and system for repositioning a service location |
US10180332B2 (en) | 2017-01-13 | 2019-01-15 | Uber Technologies, Inc. | Method and system for repositioning a service location |
US11087287B2 (en) | 2017-04-28 | 2021-08-10 | Uber Technologies, Inc. | System and method for generating event invitations to specified recipients |
US10290074B2 (en) | 2017-05-25 | 2019-05-14 | Uber Technologies, Inc. | Coordinating on-demand transportation with autonomous vehicles |
US10458802B2 (en) | 2017-06-13 | 2019-10-29 | Gt Gettaxi Limited | System and method for navigating drivers to dynamically selected drop-off locations for shared rides |
US20180374032A1 (en) | 2017-06-27 | 2018-12-27 | Uber Technologies, Inc. | Match-based route navigation system |
WO2019023324A1 (en) | 2017-07-26 | 2019-01-31 | Via Transportation, Inc. | Systems and methods for managing and routing ridesharing vehicles |
US20190050775A1 (en) | 2017-08-11 | 2019-02-14 | Uber Technologies, Inc. | Configuring an application feature using event records |
US10721327B2 (en) | 2017-08-11 | 2020-07-21 | Uber Technologies, Inc. | Dynamic scheduling system for planned service requests |
CN109425351B (en) | 2017-08-24 | 2022-02-15 | 北京嘀嘀无限科技发展有限公司 | Travel processing method and device |
US10731998B2 (en) | 2017-11-05 | 2020-08-04 | Uber Technologies, Inc. | Network computer system to arrange pooled transport services |
US10785340B2 (en) | 2018-01-25 | 2020-09-22 | Operr Technologies, Inc. | System and method for a convertible user application |
WO2019241612A1 (en) | 2018-06-15 | 2019-12-19 | The Regents Of The University Of California | Systems, apparatus and methods to improve plug-in hybrid electric vehicle energy performance by using v2c connectivity |
US11275809B2 (en) | 2018-09-06 | 2022-03-15 | Uber Technologies, Inc. | Pre-computed service metric lookup for a network-based service |
US11047700B2 (en) | 2019-02-01 | 2021-06-29 | Uber Technologies, Inc. | Navigation and routing based on image data |
-
2016
- 2016-12-30 US US15/395,406 patent/US10425490B2/en active Active
-
2019
- 2019-06-18 US US16/444,858 patent/US11601511B2/en active Active
-
2023
- 2023-01-20 US US18/099,820 patent/US20230164228A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130132140A1 (en) * | 2009-12-04 | 2013-05-23 | Uber Technologies, Inc. | Determining a location related to on-demand services through use of portable computing devices |
US20150161564A1 (en) * | 2013-12-11 | 2015-06-11 | Uber Technologies, Inc. | System and method for optimizing selection of drivers for transport requests |
US20150248689A1 (en) * | 2014-03-03 | 2015-09-03 | Sunil Paul | Systems and methods for providing transportation discounts |
US20160370194A1 (en) * | 2015-06-22 | 2016-12-22 | Google Inc. | Determining Pickup and Destination Locations for Autonomous Vehicles |
US20180189918A1 (en) * | 2016-06-13 | 2018-07-05 | Beijing Didi Infinity Technology And Development Co., Ltd. | Systems and methods for recommending recommended service location |
Non-Patent Citations (1)
Title |
---|
Lin et al., "A Model of Multimodal Ridesharing and its Analysis", 2016 17th IEEE International Conference on Mobile Data Management, Pages 164-173, June 13-16, 2016 (Year: 2016) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11924308B2 (en) | 2017-08-11 | 2024-03-05 | Uber Technologies, Inc. | Dynamic scheduling system for planned service requests |
Also Published As
Publication number | Publication date |
---|---|
US20180091604A1 (en) | 2018-03-29 |
US20190306258A1 (en) | 2019-10-03 |
US11601511B2 (en) | 2023-03-07 |
US10425490B2 (en) | 2019-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11601511B2 (en) | Service information and configuration user interface | |
US10502582B2 (en) | Modifying map configurations based on established location points | |
US11622018B2 (en) | Optimizing multi-user requests for a network-based service | |
US11099019B2 (en) | Network system to compute and transmit data based on predictive information | |
US20180060778A1 (en) | Driver location prediction for a transportation service | |
US11954754B2 (en) | Computing system configuring destination accelerators based on usage patterns of users of a transport service | |
US11006479B2 (en) | Predictive location selection transportation optimization system | |
US20230206375A1 (en) | Network system to filter requests by destination and deadline | |
CA3088010A1 (en) | Network system for multi-leg transport | |
US20160298974A1 (en) | Systems and methods for learning and displaying customized geographical navigational options | |
WO2021068856A1 (en) | Method and system for displaying travel mode for user | |
CN111143486A (en) | Service position acquisition method and device, electronic equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
STPP | Information on status: patent application and granting procedure in general |
Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: NON FINAL ACTION MAILED |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: FINAL REJECTION MAILED |