1 of 29

Near-optimal control of Ride-Hailing Platforms with Strategic Servers

Sushil Varma

Ph.D. Student

ISyE, Georgia Tech

In Academic Job Market

2 of 29

Joint work with

Francisco Castro

Asst. Professor

Anderson School of Management, UCLA

Siva Theja Maguluri

Associate Professor

ISyE, Georgia Tech

3 of 29

Strategic Agents in Ride-Hailing Platforms

Set a Driver Destination

When you set a Driver Destination in your app, we'll try and match you with trip requests from riders going towards that destination.

Surge Pricing

Area Preferences

Drivers can be strategic Preferred destinations based on offered prices

Objective

How to make optimal pricing and matching decisions in the presence of strategic agents?

4 of 29

Model: Stochastic Matching Network

Discrete Time System

 

State-Dependent Price

State-Dependent Match

Stochastic Arrivals

Arrival Rates

 

 

 

 

 

 

 

 

 

 

5 of 29

Model: Stochastic Matching Network

Discrete Time System

 

State-Dependent Price

State-Dependent Match

Stochastic Arrivals

Arrival Rates

 

 

 

 

 

 

 

 

 

 

Objective

 

Strategic Behavior

6 of 29

Model: Stochastic Matching Network

Customer Arrivals

Discrete Time System

 

7 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

8 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

 

 

 

 

Utility

Quantity

Supply Curve

9 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

 

 

 

 

Utility

Quantity

Supply Curve

Service

 

 

10 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

 

 

 

 

Utility

Quantity

Supply Curve

Service

 

 

11 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

 

 

 

 

Utility

Quantity

Supply Curve

Service

 

Objective

 

 

12 of 29

Model: Stochastic Matching Network

 

Customer Arrivals

Discrete Time System

 

Price

Quantity

Demand Curve

Server Arrivals

Server can choose their own queues

 

 

 

A simple example

 

 

 

 

 

Utility

Quantity

Supply Curve

Service

 

Objective

 

 

13 of 29

Objective

Maximize RevenueCostWaiting Penalty

 

Revenue:

Price

 

 

Waiting Penalty:

 

Cost:

There can be multiple prices associated with the same arrival rates!

 

 

 

Value function of an optimization problem!

14 of 29

Objective

 

Revenue:

Price

 

 

Waiting Penalty:

 

 

Cost:

There can be multiple prices associated with the same arrival rates!

 

 

 

Value function of an optimization problem!

15 of 29

Non-Strategic [Varma et al] v/s Strategic Setting

 

Benchmark

Pricing Policy

Matching Policy

Difference from Benchmark

Lower Bound

Fluid Model

Two-Price Policy

Max-Weight

 

Non Strategic Setting

Strategic Setting

None of the results apply directly to the strategic setting

Probabilistic Fluid Model

 

Random Matching

Probabilistic Two-Price

 

 

16 of 29

Benchmark: Fluid Model

Replace stochastic quantities by their deterministic counterparts

 

 

Subject to

 

 

 

Balance Equations to Match Customers and Servers

Compatibility Constraint

 

Lack of convexity!

How do we convexify the objective?

17 of 29

Benchmark: Probabilistic Fluid Model

Replace stochastic quantities by their deterministic counterparts

 

 

Subject to

 

 

 

Balance Equations to Match Customers and Servers

Compatibility Constraint

 

How do we convexify the objective?

Allow for probabilistic server policies

 

18 of 29

Non-Strategic [Varma et al] v/s Strategic Setting

 

Benchmark

Pricing Policy

Matching Policy

Difference from Benchmark

Lower Bound

Fluid Model

Two-Price Policy

Max-Weight

 

Non-Strategic Setting

Strategic Setting

Next goal: Devise a policy whose profit is close to the benchmark

Probabilistic Fluid Model

 

Random Matching

Probabilistic Two-Price

 

 

19 of 29

What if we employ the fluid optimal policy?

Fluid optimal policy is static with respect to the system state

The system will be unstable

 

 

 

We need to consider a perturbation of the fluid optimal

 

20 of 29

 

 

Revenue Loss

Expected Queue Length

 

 

Like a single server queue in HT

 

 

 

 

21 of 29

 

 

Revenue Loss

Expected Queue Length

 

 

Like a single server queue in HT

 

 

 

Static Customer Pricing

Probabilistic Two-Price Server

 

22 of 29

Intuition by an example

 

 

Service rate is 0 or 2 with prob 1/2

Probabilistic Fluid Optimal

 

 

1

 

 

 

2

0

 

23 of 29

Non-Strategic [Varma et al] v/s Strategic Setting

 

Benchmark

Pricing Policy

Matching Policy

Difference from Benchmark

Lower Bound

Fluid Model

Two-Price Policy

Max-Weight

 

Non-Strategic Setting

Strategic Setting

None of the results apply directly to the strategic setting

Probabilistic Fluid Model

 

Random Matching

Probabilistic Two-Price

 

 

24 of 29

Takeaways

 

What I did not talk about

 

25 of 29

Backup Slides

26 of 29

Summary of Results

Setting

Benchmark

Customer Pricing Policy

Server Pricing Policy

Matching Policy

ROC to Benchmark

Lower Bound

Non-Strategic Agents [Varma et al.]

Fluid Model

Two-Price

Two-Price

Max-Weight

Price-Dependent Utility

Probabilistic Fluid Model

Two-Price

Probabilistic Static

Max-Weight

Price and Matching rate Dependent Utility

Random Matching

Price and Matching rate Dependent Utility

Probabilistic Fluid Model

Static Pricing

Probabilistic Two-Price

Random Matching

 

27 of 29

Intuition by an example

 

 

 

 

 

 

28 of 29

Model: Stochastic Matching Network

Customer Arrivals

Set Price for each customer type

Accept/Reject Price

Mean Arrivals

 

 

 

 

Price

Quantity

Demand Curve

Stochastic Arrivals

Server Arrivals

Set Price for each server type

Picks a queue to join or leaves

Mean Arrivals

Stochastic Arrivals

Service

 

Discrete-Time Markov Chain

 

 

 

 

 

 

 

 

29 of 29

Takeaways