dynamicpricingin ridesharingplatforms · relatedwork...

45
Dynamic Pricing in Ridesharing Platforms A Queueing Approach Sid Banerjee | Ramesh Johari | Carlos Riquelme Cornell | Stanford | Stanford [email protected] With thanks to Chris Pouliot, Chris Sholley, and Lyſt Data Science 20 November 2015 1 / 39

Upload: others

Post on 28-May-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic Pricing inRidesharing Platforms

A Queueing Approach

Sid Banerjee | Ramesh Johari | Carlos RiquelmeCornell | Stanford | [email protected]

With thanks to Chris Pouliot, Chris Sholley,and Lyft Data Science

20 November 2015

1 / 39

Page 2: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Ridesharing and Pricing

2 / 39

Page 3: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Ridesharing platforms

Examples of major platforms: Lyft, Uber, Sidecar

3 / 39

Page 4: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

This talk: Pricing and ridesharing

Ridesharing is somewhat unique among online platforms:

The platform sets the transaction price.

Our goal: Understand optimal pricing strategy.

4 / 39

Page 5: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Our contributions

1. Amodel that combines:▶ Strategic behavior of passengers and drivers▶ Pricing behavior of the platform▶ Queueing behavior of the system

2. What are the advantages of dynamic pricing over staticpricing?

▶ Static: Constant over several hour periods▶ Dynamic: Pricing changes in response to system state;

"surge", "prime time"

5 / 39

Page 6: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Related work

Our work sits at a nexus between several different lines ofresearch:1. Matching queues (cf. [Adan and Weiss 2012])2. Strategic queueingmodels (cf. [Naor 1969])3. Two-sided platforms (cf. [Rochet and Tirole 2003, 2006])4. Revenuemanagement (cf. [Talluri and van Ryzin 2006])5. Large-scale matchingmarkets (cf. [Azevedo and Budish

2013])6. Mean field equilibrium (cf. [Weintraub et al. 2008])

6 / 39

Page 7: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Model

7 / 39

Page 8: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Two types: Strategic and queueing

We need a strategic model that captures:1. Platform pricing2. Passenger incentives3. Driver incentives

We need a queueingmodel that captures:1. Driver time spent idling vs. driving2. Ride requests blocked vs. served

8 / 39

Page 9: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Preliminaries

1. Focus on a block of time (e.g., several hours)over which arrival rates are roughly stable

2. Focus on a single region (e.g., a single city neighborhood)▶ For technical simplicity▶ Insights generalize to networks of regions

3. Focus on throughput: rate of completed rides▶ For technical simplicity▶ Same results for profit, when system is supply-limited▶ Similar numerical results for welfare; theory ongoing

9 / 39

Page 10: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Strategic modeling: Platform pricing

Platforms:▶ Earn a (fixed) fraction γ of

every dollar spent (e.g., 20%)▶ Need both drivers (supply)

and passengers (demand)▶ Use pricing to align the two sides

Load-dependent pricing:If # of available drivers = A, then price offered to ride = P(A)

10 / 39

Page 11: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Strategic model: Platform pricing

In practice:▶ Platforms charge a time-

and distance-dependentbase price

▶ Platformsmanipulateprice through amultiplier

▶ Base price typicallyis not varied

In our model:price≡multiplier.

11 / 39

Page 12: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Strategic model: Passengers

How do passengers enter?▶ Passenger≡ one ride request▶ Sees instantaneous ride price▶ Enters if price< reservation value V▶ V ∼ FV, i.i.d. across ride requests

µ0 = exogenous rate of "app opens".µ = actual rate of rides requested.

Then when A available drivers present:

µ = µ0FV(P(A)).

12 / 39

Page 13: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Strategic model: DriversHow do drivers enter?

▶ Sensitive to expected earnings over the block▶ Choose to enter if:

reservation earnings rate C ×expected total time in system< expected earnings while in system

▶ C ∼ FC, i.i.d. across driversΛ0 = exogenous rate of driver arrival.λ = actual rate at which drivers enter.Then:

λ = Λ0FC

(expected earnings in systemexpected time in system

)

13 / 39

Page 14: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Queueing model

1. Drivers enter at rate λ.2. When A drivers available,

ride requests arrive at rate µ(A).3. If a driver is available, ride is served; else blocked.4. Rides last exponential time, mean τ .5. After ride completion:

▶ With probability qexit: Driver signs out▶ With probability 1− qexit: Driver becomes available

14 / 39

Page 15: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Queueing model: Steady state

Jackson network of two queues: M/M(n)/1 and M/M/∞

=⇒ product-form steady state distribution π.

15 / 39

Page 16: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Putting it together: EquilibriumGiven pricing policy P(·),system equilibrium is (λ, µ, π, ι, η) such that:1. π is the steady state distribution, given λ and µ

2. η is the expected earnings per ride, given P(·) and π

3. ι is the expected idle time per ride, given π and λ

4. λ is the entry rate of drivers, given ι and η:

λ = Λ0FC

ι+ τ

)5. µ(A) is the arrival rate of ride requests when A drivers

are available, given P(·):

µ = µ0FV(P(A)).

16 / 39

Page 17: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Putting it together: Equilibrium

If price increases when number of available driversdecreases:

▶ Equilibria always exist under appropriatecontinuity of FC, FV.

▶ Equilibria are unique under reasonable conditions

17 / 39

Page 18: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Large Market Limit

18 / 39

Page 19: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

The challenge

▶ To understand optimal pricing, we need to characterizesystem equilibria.

▶ In particular, need sensitivity of equilibria to changes inpricing policy.

▶ Our approach: asymptotics to simplify analysis.

19 / 39

Page 20: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Large market asymptotics

Consider a sequence of systems indexed by n.▶ In n'th system, exogenous arrival rates are nΛ0, nµ0.▶ In n'th system, pricing policy is Pn(·).▶ In each system, this gives rise to a system equilibrium.

We analyze pricing by looking at asymptotics of equilibria.

20 / 39

Page 21: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Static Pricing

21 / 39

Page 22: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

What is static pricing?

Static pricing means: price policy is constant.Let P(A) = p for all A.

TheoremLet rn(p) denote the equilibrium rate ofcompleted rides in the n'th system. Then:

rn(p) → r̂(p) ≜ min{Λ0FC(γp/τ)/qexit, µ0FV(p)}.

Throughput =min { available supply, available demand }

22 / 39

Page 23: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Static pricing: Illustration

23 / 39

Page 24: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Static pricing: Interpretation

Note that at any price, queueing system is always stable:▶ When supply < demand:

Drivers become fully saturated▶ When supply > demand:

Drivers forecast high idle times and don't enterBalance price pbal: Price where supply= demand

CorollaryThe optimal static price is pbal.

24 / 39

Page 25: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing

25 / 39

Page 26: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

What is dynamic pricing?

Meant to capture "surge" (Uber)and "prime time" (Lyft) pricing strategies.

We focus on threshold pricing:▶ Threshold θ

▶ High price ph charged whenavailable drivers< θ

▶ Low price pℓ < ph charged whenavailable drivers> θ

26 / 39

Page 27: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n = 1

27 / 39

Page 28: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n = 10

27 / 39

Page 29: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n = 100

27 / 39

Page 30: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n = 1000

27 / 39

Page 31: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n → ∞

27 / 39

Page 32: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Dynamic pricing: Numerical investigation

▶ Fix one price,and varythe other price.

▶ Compare tostatic pricing.

n → ∞

27 / 39

Page 33: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Optimal dynamic pricing

TheoremLet r∗n be the rate of completed rides in the n'th system, usingthe optimal static price.

Let r∗∗n be the rate of completed rides in the n'th system, usingthe optimal threshold pricing strategy.

Then if FV has monotone hazard rate,

r∗n − r∗∗nn → 0 as n → ∞.

28 / 39

Page 34: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Optimal dynamic pricing

In other words:

In the fluid limit, no dynamic pricing policyyields higher throughput than optimal static pricing.

This result is reminiscent of similar results in the classicalrevenuemanagement literature (e.g., [Gallego and van Ryzin,1994]).

The main differences arise due to the presence of a two sidedmarket.

29 / 39

Page 35: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Optimal dynamic pricing

In other words:

In the fluid limit, no dynamic pricing policyyields higher throughput than optimal static pricing.

This result is reminiscent of similar results in the classicalrevenuemanagement literature (e.g., [Gallego and van Ryzin,1994]).

The main differences arise due to the presence of a two sidedmarket.

29 / 39

Page 36: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Proof sketch

Under threshold pricing:▶ Drivers are sensitive to two quantities:

idle time, and price.▶ Show that optimal θ∗n → ∞,

but chosen so that idle time→ 0 as n → ∞.▶ In this limit, drivers are sensitive to

the average price per ride:

pavg = πhph + πℓpℓ,

where πh, πℓ are≈ probabilities of beingbelow or above θ, respectively.

▶ If pavg decreases, fewer drivers will enter.

30 / 39

Page 37: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Proof sketch (cont'd)

We note that:1. If pℓ < ph ≤ pbal, then pavg = ph.2. If pbal ≤ pℓ < ph, then pavg = pℓ.3. If pℓ < pbal < ph, then πℓ > 0, πh > 0.

In first two cases, de facto static pricing.

31 / 39

Page 38: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Proof sketch (cont'd)

We explore the third case.Suppose that we start with pℓ < ph = pbal (so pavg = ph).

Now increase ph:▶ Before πℓ = 0, but now πℓ > 0, so some customers pay

pℓ; this lowers pavg.▶ ph higher, so customers arriving when A < θ pay more;

this increases pavg.When FV is MHR, we show that the first effect dominates thesecond, so throughput falls.

32 / 39

Page 39: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Robustness

33 / 39

Page 40: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

The value of dynamic pricing

How does dynamic pricing help?▶ When system parameters are known,

performance does not exceed static pricing.▶ When system parameters are unknown,

dynamic pricing naturally "learns" them.

34 / 39

Page 41: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Robustness: IllustrationWhat happens to static pricing in a demand shock?

35 / 39

Page 42: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Robustness: IllustrationWhat happens to dynamic pricing in a demand shock?

36 / 39

Page 43: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Robustness: Dynamic pricing

We can formally establish the observation in the previousillustration:

▶ Suppose FC is logconcave, and µ(1)0 < µ

(2)0 are fixed.

▶ Let p(1)bal,n, p

(2)bal,n = optimal static prices in the n'th system.

▶ Let r(1)n , r(2)n = optimal throughput in the n'th system.▶ Suppose now the true µ0 ∈ [µ

(1)0 , µ

(2)0 ].

▶ Using both prices p(1)bal,n, p

(2)bal,n is robust:

▶ There exists a sequence of threshold pricing policieswith throughput at any such µ0 (in the fluid scaling)≥ the linear interpolation of r(1)n and r(2)n .

(Same holds w.r.t.Λ0.)

37 / 39

Page 44: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Conclusion

38 / 39

Page 45: DynamicPricingin RidesharingPlatforms · Relatedwork Ourworksitsatanexusbetweenseveraldifferentlinesof research: 1. Matchingqueues(cf.[AdanandWeiss2012]) 2. Strategicqueueingmodels(cf.[Naor1969])

Platform optimization

This work is an example of platform optimization:Requires understanding both operations and economics.Other topics under investigation:1. Network modeling (multiple regions):

Our main insights generalize2. Effect of pricing on aggregate welfare3. Modeling driver heat maps4. Fee structure: changing the percentage5. Effect of changing the matching algorithm

39 / 39