The present disclosure relates to dynamic platforms for mobility on demand.
Mobility on Demand (MoD) platforms match providers of on-demand transportation services to passengers through cloud-based computing platforms. Mobile devices and other computers may be used to match drivers (the service providers) with customers seeking on-demand transportation. The MoD system may be balanced when ridership is high, wait times for passengers seeking transportation and the drivers seeking available paying passengers are minimized, and overall revenues are high. High ridership may result when passengers have a relatively high level of certainty that their wait times for transportation will be short, and that they will receive good value for their transportation money spent. Passenger wait times are often lowest when the service providers have a relatively high level of certainty that there will be plentiful available passengers willing to pay attractive rates, which may encourage a high level of service partner participation.
Conventional systems for balancing these competing interests have used dynamic pricing strategies that adjust transportation fees based on instantaneous demand fulfillment. However, conventional MoD pricing strategies do not address the problem of balancing and maximizing all competing interests in a MoD system when one or more of these elements face uncertainty.
The detailed description is set forth with reference to the accompanying drawings. The use of the same reference numerals may indicate similar or identical items. Various embodiments may utilize elements and/or components other than those illustrated in the drawings, and some elements and/or components may not be present in various embodiments. Elements and/or components in the figures are not necessarily drawn to scale. Throughout this disclosure, depending on the context, singular and plural terminology may be used interchangeably.
The systems and methods disclosed herein are configured for a system to receive a request from a prospective passenger mobile device for on-demand rideshare service, and in response provide an offer to the requesting mobile device that is priced to minimize wait time and maximize a probability of acceptance by the requesting prospective passenger. Disclosed methods may use an analytical model that incorporates a Markov Decision Process with alternative minimization algorithms that account for socioeconomic variables of the passengers making the request(s), and accounts for uncertainties such as unknown wait times for a ride.
The prospective passenger messages requesting rideshare services may include date, time, location, identity, destination address, and/or other information with which a rideshare driver may be enabled by the system to propose a rideshare price and pickup time. Some aspects of the present disclosure may determine the possible updated estimated wait time (EWT) if the passenger would be accommodated. The system or another computing resource may make the EWT determination based, at least in part, on the passenger's request message. The system may determine a probability value of whether the passenger (using their mobile device) will accept the proposed rideshare offer. The system may generate a price for the ride offer based on the probability value and the EWT, and send the proposal to the passenger mobile device. The proposal message may include the ride offer, the price for the ride offer, and an itinerary specifying pickup information, and other information such as, for example, distances and navigational information for the passenger.
Embodiments may enhance the economic efficiency of the shared mobility on demand (MoD) system using prospect theory to capture passenger behavior under various uncertainty scenarios inherent with mobility on demand services. The proposed dynamic pricing strategy incorporates an Alternative Minimization (AltMin) algorithm developed for dynamic routing that may incentivize passengers to accept an offer for rideshare services while balancing demand and supply for those on-demand services.
These and other advantages of the present disclosure are provided in greater detail herein.
The disclosure will be described more fully hereinafter with reference to the accompanying drawings, in which exemplary embodiments of the disclosure are shown, and which are not intended to be limiting.
The rideshare application 120 may run on respective mobile devices used by both drivers (also referred to as rideshare application 125) and passengers (also referred to as rideshare application 130), and may be delivered as stand-alone applications, or as shown in
The rideshare driver 110 is depicted in
In the present example shown in
The balance of supply and demand for MoD services can be characterized using various Key Performance Indicators (KPIs) that can include, for example, an average estimated waiting time (EWT) of passengers who are currently in a pickup queue, an idle rate that indicates a percentage of driver time spent driving paying passengers with respect to the overall period of free time available to drive the driver's vehicle, and a completion rate indicative of a percentage of transportation requests that mature into transactions.
Of these three example KPIs, embodiments of the present disclosure may focus on a dynamic pricing strategy that maximizes ridership and revenues using the EWT indicator. As used herein, EWT refers to the average estimated waiting time of the passengers who are currently in a pickup queue, i.e., that have accepted the ride offers but have not yet been picked up.
EWT is a panel parameter that varies with time. Accordingly, EWT may be denoted as EWT(t). In one aspect, a MoD ecosystem can be characterized in terms of market health by evaluating how the EWT varies with respect to time (EWT(t)). A sharp increase in EWT(t) may imply that demand exceeds supply for a span of time, and thus, the prices during this time should be increased. The inverse relationship and response may also hold true.
According to one or more embodiments of the present disclosure, one processor-implemented method may balance the competing interests discussed above by regulating the EWT(t) to be within a predetermined threshold of values associated with a target value. One tool for performing this analysis and response can include a transactive controller 160 (which may be part of or accessible by the rideshare application 120). The transactive controller 160 may be configured and/or programmed with an analytical model that uses, among other analytical tools, a Markov Decision Process (MDP), and an algorithm based, at least in part, on the concept of Alternate Minimization. In some aspects, the transactive controller 160 may improve dynamic routing algorithms.
In one example, the prospective rideshare passenger 140 may generate a request 170 for a rideshare using the rideshare application 130 on the passenger mobile device 150. The rideshare request 170 can indicate an interest by the rideshare passenger 140 to possibly engage the services of a rideshare driver (e.g., the rideshare driver 110). The rideshare request may trigger the rideshare platform to return an offer for transportation 175, which the rideshare passenger 140 may evaluate to determine whether it is the most desirable option for transport.
When a new request for a rideshare is received by the cloud-based server(s) 135, the transactive controller 160 may compute a driver itinerary to accommodate the new passenger 140 subject to an objective function, and one or more system-defined constraints. The itinerary can include the pickup/drop-off locations associated with the rideshare, the expected pickup/drop-off times for the prospective passenger 140, walking distances to and from the pickup/drop-off locations, and information indicative of known other passengers with whom the requesting passenger 140 may share the ride. The cloud-based server(s) 135 may send the rideshare offer 175 to the rideshare passenger 140, and the passenger 140 may be provided options within the rideshare application 130 to accept the offer and engage the services of the rideshare driver 110.
In some aspects, the cloud-based server(s) 135, described in greater detail with respect to
With reference now to
request=(passenger, requirement) (1)
summarizes the request specifications and socio-demographics of the passenger that may impact an outcome as to whether the passenger selects the rideshare service or another mode of transportation. The socio-demographics of a potential passenger (e.g., the passenger 140) may be based, at least in part, on known associations with demographic choices and categories of rideshare customers.
For example, in equation (1) “passenger” denotes one or more quantified associations between geographic region, passenger income, time, date, and other information that may be known based on various studies, surveys, and data sources. The denotation passenger reflects associations that quantify known socio-demographic characteristics of rideshare customers with quantifiable values. For example, rideshare customers having an average income of x dollars monthly may have a likelihood of y to take a bus between the weekday hours of 6 am and 9 am. While an exhaustive list of known socio-demographic examples that may be correlated to a rideshare or other transportation choice may be outside of the scope of the present description, it is appreciated that such correlations are known in the art, observable, and may be quantified to provide analytical weights for observed socio-demographic characteristics of rideshare customers.
In equation (1) of
The processor(s) 305 may determine estimated waiting time from three perspectives, which are collectively grouped in
The processor(s) 305 may calculate the EWT1 215 from a current route that has been derived using an alternative minimization (AltMin) algorithm. The AltMin algorithm is a dynamic routing algorithm that dynamically optimizes routes, so that travel time and costs are minimized. In some aspects, the AltMin algorithm can accommodate real-time rideshare requests from passengers using online tools as described herein. Examples of alternative minimization algorithms are described in the publication titled, “A Dynamic Routing Framework With Space Windows For Shared Mobility Services,” by Y. Guan et al., (2017) ACM Transactions on Cyber-Physical Systems, Special Issue on Transportation Cyber-Physical Systems (which is incorporated herein by reference), and in the publication titled, “Transactive Control in Smart Cities,” by Annaswamy, A. M., et al. (2018), Proceedings of the IEEE, 106(4), 518-537 (which is also incorporated herein by reference),
The processor(s) 305 may next determine an estimated waiting time during when the request 170 is received by the cloud-based server(s) 135 and offer acceptance, and finally, the desired estimated waiting time EWT*225, which may include one or more predetermined value(s) for target waiting times. In this manner, EWT2 may be expressed as a function f1 of the request 170, which may describe the waiting time after the rideshare request 170 is accommodated and the rideshare passenger 140 accepts the ride rideshare offer 175. In mathematical notation, this may be denoted as EWT2=f1(request, ·) using the AltMin algorithm.
The processor(s) 305 may determine a probability that the passenger will accept the rideshare offer 175, depicted as prob*a228. This probability is depicted in
prob*a=f2(EWT1, EWT2, EWT*) (2)
where prob*a is the probability (228) that the passenger sending the rideshare request 170 will accept the rideshare offer 175, and is a mathematical function f2 of the EWT 210.
Once the processor(s) 305 determines the desired probability of acceptance prob*a 230, in some embodiments the next step can include determining a desired difference between perceived utility for the services at issue, depicted in
Therefore, the relative utility of the rideshare service that the rideshare passenger 140 perceives with respect to the reference mode ΔU* can be calculated reversely via a discrete choice model through a mathematical representation of ΔU*=f3(prob*a), such that
The function calculating price 250 to include in the rideshare offer 175 may further include defining an itinerary of the trip being requested, and including portions of the itinerary as one or more attributes. For example, in mathematical notation, one can define the itinerary of the trip having trip portions that include walking to the pick-up point WalkTp, waiting for the rideshare service WaitT, riding in the rideshare RideT, and walking from the drop-off point to the destination WalkTd. These itinerary steps may be represented as,
attribute=[WalkTp,WaitT, Ride, WalkTd]
where WalkTp,WaitT, RideT,WalkTd are the trip steps in the itinerary. In some aspects, the processor(s) 305 may retrieve the itinerary of the reference mode from one or more publicly available sources including, for example, online global positioning system information, map APIs, public transportation, etc. The processor(s) 305 may denote the actual utility of the reference mode as R=f4(request), which may be mathematically represented as,
R=a+b
p·WalkTp+bw·WaitT+br·RideT+bd·WalkTd+γ·ρ. (5)
The processor(s) 305 may derive the itinerary for the rideshare offer 175 via the AltMin dynamic routing algorithm, described mathematically as attribute=f5(request).
According to one embodiment, the processor(s) 305 may determine the relative utility ΔU 235, describing a quantified perception of the utility of taking the rideshare service with respect to the reference mode of transportation R 230. Stated in another way, the relative utility ΔU 235 quantifies how valuable the rideshare passenger 140 may find the rideshare service offer given the other available information at the time of decision making. The relative utility ΔU 235 can be based on prospect theory, denoted as,
ΔU=f6(R, attribute, distribution, price), (6)
where price (e.g., the price 250) is unknown, and the distribution is a quantified and/or estimated value representing the distribution of the uncertain utility that the rideshare passenger 140 will associate with the rideshare offer 175. The uncertain utility, based upon historical records, can derive from quantified values associated with uncertainty in waiting, riding and walking times to arrive at the destination from the starting point. For example, Let ΔU=ΔU*, and the actual probability of acceptance proba will equate to the desired probability of acceptance prob*a.
The function f6 may be a function that describes ΔU, a perceived relative utility of taking the rideshare service with respect to the reference transportation mode R 230. The reference transportation mode R may represent any known available mode of transportation used by the passenger 140, and/or by demographics like the passenger 140. For example, the rideshare passenger 140 may be inclined to take the bus as a preferred mode of transportation. Describing a prospect theory-based mathematical relationship between the perceived utility of the rideshare service ΔU, and the reference mode of transportation R,
where u is the actual utility of the passenger taking the rideshare service, which may be a weighted sum of various travel time cost terms. Stated another way, u may be considered a set of attributes that can describe time cost events associated with traveling such as, for example, waiting time, walking times, riding times, etc. In some aspects, u can be a random variable distributed in a closed interval [u1, u2]. The functions f (u) and F(u) are corresponding Probability Density Function (PDF) and Cumulative Distribution Function (CDP), respectively. R is an actual utility of the reference transportation mode as an alternative if the passenger decides not to take the rideshare service, which may be a known value from a lookup table stored in the computer-readable memory described herein. V(·) may represent a calculation for the passenger's perception of the utility of taking the rideshare service relative to the reference transportation mode (a first irrationality, which may be characterized as loss aversion), and π(·) may determine an approximated value indicative of a passenger perception of those probabilities (i.e., the second irrationality, characterized as an overreaction to small probabilities and underreaction to large probabilities). Accordingly, in equations (8) and (9) the values α, β−, β+ and γ are parameters associated with prospect theory, which may be derived from surveys and other market-based data, and are well-understood in the art of prospect theory evaluations.
The function f6 describes a determination of ΔU 235, which may describe a perceived relative utility of taking the rideshare service with respect to the reference transportation mode based upon prospect theory. The function f6 may monotonically decrease with the price 250 and may be continuous. Therefore, the processor(s) 305 may calculate the price 250 reversely with the mathematical determination,
price=f7(U*, R, attribute, distribution) , (12)
where f7 is the inverse of f6. Accordingly, an overall dynamic pricing algorithm may be mathematically summarized by the expression,
price=f7(f3(f2(EWT1, f1(request), EWT*)),f4(request), f5(request), distribution) (13).
As shown in
The one or more networks 335 may be substantially similar to or identical to the network(s) 155 depicted with respect to
The one or more processor(s) 305 are collectively a hardware device for executing program instructions (aka software), stored in a computer-readable memory (e.g., the memory 310). The one or more processor(s) 305 can be a custom made or commercially-available processor, a central processing unit (CPU), a plurality of CPUs, an auxiliary processor among several other processors associated with the computer 300, a semiconductor based microprocessor (in the form of a microchip or chipset), or generally any device for executing instructions.
The one or more processor(s) 305 may be disposed in communication with one or more memory devices (e.g., the memory 310 and/or one or more external databases 330, etc.) via a storage interface 320. The storage interface 320 can also connect to one or more memory devices including, without limitation, one or more databases 330, and/or one or more other memory drives (not shown in
The memory 310 can include any one or a combination of volatile memory elements (e.g., dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), etc.) and can include any one or more nonvolatile memory elements (e.g., erasable programmable read only memory (EPROM), flash memory, electronically erasable programmable read only memory (EEPROM), programmable read only memory (PROM), etc.
The instructions in the memory 310 can include one or more separate programs, each of which can include an ordered listing of computer-executable instructions for implementing logical functions. In the example of
The program instructions stored in the memory 310 can further include application data 360, and instructions for controlling and/or interacting with the computer through a user interface 365 such as, for example, the input device(s) 345.
The I/O adapter 315 can connect a plurality of input devices 345 to the computer 300. The input devices can include, for example, a keyboard, a mouse, a microphone, a sensor, etc. The output device 350 can include, for example, a display, a speaker, a touchscreen, etc.
The I/O adapter 315 can further include a display adapter coupled to one or more displays. The I/O adapter 315 can be configured to operatively connect one or more input/output (I/O) devices 350 to the computer 300. For example, the I/O adapter 315 can connect a keyboard and mouse, a touchscreen, a speaker, a haptic output device, or other output devices. The output devices 350 can include but are not limited to a printer, a scanner, and/or the like. Other output devices can also be included, although not shown. Finally, the I/O devices connectable to the I/O adapter 315 can further include devices that communicate both inputs and outputs, for instance but are not limited to, a network interface card (NIC) or modulator/demodulator (for accessing other files, devices, systems, or a network), a radio frequency (RF) or other transceiver, a telephonic interface, a bridge, a router, and the like.
According to some example embodiments, the computer 300 can include a telecommunications adapter 340. The telecommunications adapter 340 can include a global positioning system (GPS), cellular, mobile, and/or other communications protocols for wireless communication.
The network 335 may be the Internet, a private network, public network or other configuration that operates using any one or more known communication protocols such as, for example, transmission control protocol/Internet protocol (TCP/IP), Bluetooth®, Wi-Fi, and cellular technologies such as Time Division Multiple Access (TDMA), Code Division Multiple Access (CDMA), High Speed Packet Access (HSPDA), Long-Term Evolution (LTE), Global System for Mobile Communications (GSM), and Fifth Generation (5G), to name a few examples, can be an IP-based network for communication between the computer 300 and any external device. The network(s) 335 may transmit and receive data between the computer 300 and devices and/or systems external to the computer 300. The network 335 can also be and/or include a packet-switched network such as a local area network, wide area network, metropolitan area network, the Internet, or other similar types of network environment.
The network 335 may include and/or be part of a cloud computing environment for delivery of one or more services, platforms, etc., described herein. It is understood in advance that although this disclosure includes a detailed description on cloud computing, implementation of the teachings recited herein are not limited to a cloud computing environment. Rather, embodiments of the present invention are capable of being implemented in conjunction with any other type of computing environment now known or later developed.
Cloud computing, as used herein, is a model of service delivery for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, network bandwidth, servers, processing, memory, storage, applications, virtual machines, and services) that can be rapidly provisioned and released with minimal management effort or interaction with a provider of the service. This cloud model can include at least five characteristics, at least four service models, and at least four deployment models.
Characteristics of a cloud computing model may include on-demand self-service tools for users such as the rideshare driver 110 and the rideshare passenger 140 to utilize with a provided service. A cloud consumer can unilaterally provision computing capabilities, such as server time and network storage (which, in some embodiments, may include data associated with rideshare requests 170, rideshare offers 175, identity information associated with rideshare passengers 140, etc.), as needed automatically without requiring human interaction with the MoD platform provider 115.
Characteristics of a cloud computing model may further include broad network access. For example, capabilities are often available over a network (e.g., one or more network(s) 155 and/or 335, as depicted in
Cloud computing platforms may also include and/or utilize resource pooling such that the MoD platform provider 115 may provide computing resources to the cloud-based server(s) 135 to serve multiple consumers using a multi-tenant model, with different physical and virtual resources dynamically assigned and reassigned according to demand. For example, the rideshare driver 110 may utilize the rideshare application 125 on the mobile device 145, and tens, hundreds, etc. of other rideshare drivers (not shown in
The MoD platform provider 115 may also provide a Platform as a Service (PaaS), which can include a capability provided to the rideshare passenger 140 and/or the rideshare driver 110 to deploy, onto the cloud infrastructure, consumer-created or acquired applications that are created using programming languages and tools supported by the provider. The consumer does not manage or control the underlying cloud infrastructure including the network(s) 335, 155, operating system 355, or databases 330, but has control over the deployed rideshare applications 120, 125, and 130.
The network 335 depicts a cloud computing environment for use in practicing the teachings embodied herein. As shown in
Referring now to
A hardware and software layer 422 can include hardware and software components. Examples of hardware components can include, for example, mainframes 424, one or more Reduced Instruction Set Computer (RISC) and/or architecture-based servers 426, one or more servers 428, one or more blade servers 430, one or more storage devices 432, and one or more network(s) and networking components 434. In some embodiments, the software components can also include network application server software 436 and/or database software 438. The cloud-based server(s) 335, 135 are an example of hardware and software layer 422 device(s).
A virtualization layer 439 can provide an abstraction layer from which the following examples of virtual entities can be provided: virtual servers 440, virtual storage 442, virtual networks 444 (which can include virtual private networks), virtual applications and operating systems 446, and virtual clients 448.
In one example, a management layer 450 can provide the functions described below. A resource provisioning module 452 can provide dynamic procurement of computing resources and other resources that can be utilized to perform tasks within the computing architecture (depicted generally in
A workloads layer 462 can provide functionality for which the cloud computing environment can be utilized. For example, a workloads layer 462 can include a mapping and navigation resource 464 for providing trip information and navigational information associated with the rideshare offer 175, including providing map information, walking instructions, driving instructions, providing distances, projecting time for travel, etc. A software development and lifecycle management resource 466 may be included, as well as a virtual delivery resource 468, a data analytics processing resource 470, a transaction processing resource 472, and the transactive controller 160, described with respect to
A step 510 can include determining, based on the request message and the real time occupancy condition of the MoD platform, an updated estimated wait time (EWT) if the passenger would be accommodated.
A step 515 can include determining, based on the first EWT, a probability value indicative of whether the passenger mobile device will send an acceptance of a ride offer for passenger transport.
A step 520 can include generating, based on the probability value, a price for the ride offer associated with a reference transportation mode.
A step 525 can include sending a proposal message to the passenger mobile device, the proposal message comprising the ride offer, the price for the ride offer, and an itinerary comprising pickup information, and distance information.
The computational experiment of
In the experiment depicted in
The corresponding prices of the rideshare service that the server offers to the passengers may be calculated using the dynamic pricing strategy elaborated with respect to
Similarly, in
In the above disclosure, reference has been made to the accompanying drawings, which form a part hereof, which illustrate specific implementations in which the present disclosure may be practiced. It is understood that other implementations may be utilized, and structural changes may be made without departing from the scope of the present disclosure. References in the specification to “one embodiment,” “an embodiment,” “an example embodiment,” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases are not necessarily referring to the same embodiment. Further, when a feature, structure, or characteristic is described in connection with an embodiment, one skilled in the art will recognize such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.
It should also be understood that the word “example” as used herein is intended to be non-exclusionary and non-limiting in nature. More particularly, the word “exemplary” as used herein indicates one among several examples, and it should be understood that no undue emphasis or preference is being directed to the particular example being described.
A computer-readable medium (also referred to as a processor-readable medium) includes any non-transitory (e.g., tangible) medium that participates in providing data (e.g., instructions) that may be read by a computer (e.g., by a processor of a computer). Such a medium may take many forms, including, but not limited to, non-volatile media and volatile media. Computing devices may include computer-executable instructions, where the instructions may be executable by one or more computing devices such as those listed above and stored on a computer-readable medium.
With regard to the processes, systems, methods, heuristics, etc. described herein, it should be understood that, although the steps of such processes, etc. have been described as occurring according to a certain ordered sequence, such processes could be practiced with the described steps performed in an order other than the order described herein. It further should be understood that certain steps could be performed simultaneously, that other steps could be added, or that certain steps described herein could be omitted. In other words, the descriptions of processes herein are provided for the purpose of illustrating various embodiments and should in no way be construed so as to limit the claims.
Accordingly, it is to be understood that the above description is intended to be illustrative and not restrictive. Many embodiments and applications other than the examples provided would be apparent upon reading the above description. The scope should be determined, not with reference to the above description, but should instead be determined with reference to the appended claims, along with the full scope of equivalents to which such claims are entitled. It is anticipated and intended that future developments will occur in the technologies discussed herein, and that the disclosed systems and methods will be incorporated into such future embodiments. In sum, it should be understood that the application is capable of modification and variation.
All terms used in the claims are intended to be given their ordinary meanings as understood by those knowledgeable in the technologies described herein unless an explicit indication to the contrary is made herein. In particular, use of the singular articles such as “a,” “the,” “said,” etc. should be read to recite one or more of the indicated elements unless a claim recites an explicit limitation to the contrary. Conditional language, such as, among others, “can,” “could,” “might,” or “may,” unless specifically stated otherwise, or otherwise understood within the context as used, is generally intended to convey that certain embodiments could include, while other embodiments may not include, certain features, elements, and/or steps. Thus, such conditional language is not generally intended to imply that features, elements, and/or steps are in any way required for one or more embodiments.