optimal targeting of customers for a last-minute sale · optimal targeting of customers for a...

43
Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart´ ın

Upload: dangkien

Post on 14-Jul-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Optimal Targeting of Customersfor a Last-Minute Sale

R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart́ın

Page 2: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Want to sell business class upgrades

Who should get the offer?

1

Page 3: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The Process — (1) Set of customers C

2

Page 4: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

(2) Address the offer to S ⊆ C

3

Page 5: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

(3) Respondents R ⊆ S ⊆ C

4

Page 6: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

(4) Winner chosen at random

5

Page 7: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The Single Item case

Setting Implication

different revenue for each client vi want high revenue clients

different acceptance probability pi want high pbb clients

last minute no time for regret

until sold out first respondent wins

6

Page 8: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The Single Item case

Setting Implication

different revenue for each client vi want high revenue clients

different acceptance probability pi want high pbb clients

last minute no time for regret

until sold out first respondent wins

Goal

balance revenues and probabilities

to maximize expected revenue

7

Page 9: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The Problem — Discrete Version

Expected revenue for S ⊆ C is:

revenue ifR accepts

prob thatR accepts

prob thatS\R rejects

VS = E[v(R)|R|

]=∑R⊆S

︷ ︸︸ ︷v(R)|R|

·

︷ ︸︸ ︷∏i∈R

pi ·

︷ ︸︸ ︷∏i∈S\R

(1− pi)

Problem: find V ∗ = maxS⊆C

VS

8

Page 10: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The Problem — Continuous Version

Offer is made to each client with probability xi ∈ [0, 1]

P[i accepts] = P[Yi = 1] = xi · pi = yi

V (y) =∑R⊆C

v(R)|R|·∏i∈R

yi ·∏i 6∈R

(1−yi)

Problem: find V ∗ = max0≤yi≤pi

V (y)

9

Page 11: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Remarks

• V (y) is affine in each variable yi

⇒ discrete and continuous problems are equivalent

10

Page 12: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Remarks

• V (y) is affine in each variable yi

⇒ discrete and continuous problems are equivalent

• Efficient computation of objective function

V (y) = E[v(R)|R|

]= E

[Pi∈C viYiPi∈C Yi

]=∑i∈C

viyiE[ 11+Si

]

distribution of Si =∑j 6=i Yj computed by convolution

⇒ V (y) computed in O(n2)

11

Page 13: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

12

Page 14: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

• If so, find a threshold value V and offer to all clients with vi ≥ V .

Assuming v1 ≥ v2 ≥ · · · ≥ vn, optimal threshold found in O(n3)

max1≤i≤n

V{1,...,i}

13

Page 15: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

• If so, find a threshold value V and offer to all clients with vi ≥ V .

Assuming v1 ≥ v2 ≥ · · · ≥ vn, optimal threshold found in O(n4)

Random instances: 10 customers, 200 repetitionsAlgorithm % opt Min ratio Avg ratio Time

optimal 100.0 1.0000 1.0000 1611.2

threshold 93.0 0.9916 0.9998 23.5

14

Page 16: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

• If so, find a threshold value V and offer to all clients with vi ≥ V .

Assuming v1 ≥ v2 ≥ · · · ≥ vn, optimal threshold found in O(n4)

• Threshold typical in revenue management... but not always optimal!

15

Page 17: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

• If so, find a threshold value V and offer to all clients with vi ≥ V .

Assuming v1 ≥ v2 ≥ · · · ≥ vn, optimal threshold found in O(n4)

• Threshold typical in revenue management... but not always optimal!

• Sorting by probability or expected value is also sub-optimal

16

Page 18: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold Strategies

• If offer is made to a customer reporting vi, shouldn’t we also consider

those customers reporting higher values?

• If so, find a threshold value V and offer to all clients with vi ≥ V .

Assuming v1 ≥ v2 ≥ · · · ≥ vn, optimal threshold found in O(n4)

• Threshold typical in revenue management... but not always optimal!

• Sorting by probability or expected value is also sub-optimal

• In fact: every subset can be optimal — complexity is open

17

Page 19: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold strategies are 12-optimal: LP relaxation

V (y) =∑i∈C viπi

πi = P[i accepts and wins] = yi E[ 11+Si

]

Si =∑j 6=i Yj (number of competitors)

=⇒ 0 ≤ πi ≤ pi and∑i∈C πi ≤ 1

18

Page 20: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Threshold strategies are 12-optimal: LP relaxation

V (y) =∑i∈C viπi

πi = P[i accepts and wins] = yi E[ 11+Si

]

Si =∑j 6=i Yj (number of competitors)

=⇒ 0 ≤ πi ≤ pi and∑i∈C πi ≤ 1

Consider the relaxation (upper bound)

V ∗ ≤ V LP = max0≤yi≤pi

{∑i∈C viyi :

∑i∈C yi ≤ 1

}and use it to get a 1

2-optimal threshold strategy

19

Page 21: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Linear-time approximation algorithm algLP

• LP solution in O(n): find largest k with∑ki=1 pi ≤ 1 and set

yLPi =

pi if i ≤ k1−

∑ki=1 pi if i = k + 1

0 otherwise

20

Page 22: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Linear-time approximation algorithm algLP

• LP solution in O(n): find largest k with∑ki=1 pi ≤ 1 and set

yLPi =

pi if i ≤ k1−

∑ki=1 pi if i = k + 1

0 otherwise

• yLP is a randomized strategy equivalent to{select {1, . . . , k} with probability [

∑k+1i=1 pi − 1]/pk+1

select {1, . . . , k + 1} with probability [1−∑ki=1 pi]/pk+1

21

Page 23: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Linear-time approximation algorithm algLP

• LP solution in O(n): find largest k with∑ki=1 pi ≤ 1 and set

yLPi =

pi if i ≤ k1−

∑ki=1 pi if i = k + 1

0 otherwise

• yLP is a randomized strategy equivalent to{select {1, . . . , k} with probability [

∑k+1i=1 pi − 1]/pk+1

select {1, . . . , k + 1} with probability [1−∑ki=1 pi]/pk+1

• De-randomize in O(n2): max between V{1,...,k} and V{1,...,k+1}

22

Page 24: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Random instances: 10 customers, 200 repetitionsAlgorithm % opt Min ratio Avg ratio Time

optimal 100.0 1.0000 1.0000 1611.2

threshold 93.0 0.9916 0.9998 23.5

lp-relax 47.5 0.8168 0.9771 0.4

23

Page 25: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Theorem: algLP is a 12−approximation algorithm

24

Page 26: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Theorem: algLP is a 12−approximation algorithm

Proof: By Jensen’s inequality

E[ 11+Si

] ≥ 11+E(Si)

= 11+

Pj 6=i z

LPj≥ 1

1+1 = 12

hence

V (zLP) =∑i∈C vi z

LPi E[ 1

1+Si] ≥ 1

2

∑i∈C vi z

LPi

so that

V ∗ ≥ V (zLP) ≥ 12V

LP ≥ 12V∗. �

25

Page 27: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Alternative: Hyperbolic relaxation

πi ≥ yi1+

Pj 6=i yj

≥ yi1+

Pj∈C yj

V ∗ ≥ max0≤yi≤pi

Pi∈C viyi

1+Pi∈C yi

• Common-lines problem in transit equilibrium (Chriqui&Robillard’75)

• Optimum is a threshold strategy

• Linear-time algorithm: maxk [v1p1 + · · ·+ vkpk]/[1 + p1 + · · ·+ pk]

• Also a 12-approximation algorithm

26

Page 28: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Improved 23-approximation

Let x = P[∑i∈C Yi = 0] so that x+

∑i∈C πi = 1

Moreover πi = yi E[ 11+Si

] with

E[ 11+Si

] ≤ 1 · P[Si=0] + 12 · P[Si>0]

= 12(1 + P[Si=0])

= 12(1 + x

1−yi)

and then yi ≤ pi implies πi ≤ pi2 (1 + x

1−pi)

27

Page 29: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Hence we get the alternative LP relaxation

V ∗ ≤ V LP2 = max∑i∈C vizi

zi ≤ pi2 (1 + x

1−pi)

x+∑i∈C zi = 1

x, zi ≥ 0

Algorithm algLP2

• Find a basic optimal solution (z∗, x∗) for LP2

• Set yLP2

i = 2z∗i1+ x∗

1−pi...either 0 or pi except for one value!

• De-randomize yLP2 to get a set of the form {1, . . . , k}

28

Page 30: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Theorem: algLP2 is a 23-approximation

29

Page 31: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Theorem: algLP2 is a 23-approximation

Proof: V (y) =∑i∈C viyiE[ 1

1+Si] ≥

∑i∈C

viyi1+

Pj 6=i yj

Replacing yLP2

i we get V (yLP2) ≥∑i∈C viz

∗i γi with

γi = 2(1+x∗)

(3−x∗−2z∗i )(1+x∗

1−pi).

Since V ∗ ≤∑i∈C viz

∗i we need γi ≥ 2

3. This is obvious if x∗ = 0. Else,

since (z∗, x∗) is a basic solution exactly one of the two inequalities

involving z∗i is tight: if z∗i > 0 then z∗i = pi2 (1 + x∗

1−pi) so that

γi = 2(1+x∗)

(3−pi− x∗1−pi

)(1+ x∗1−pi

)≥ 2

3.�

30

Page 32: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Random instances: 10 customers, 200 repetitionsAlgorithm % opt Min ratio Avg ratio Time

optimal 100.0 1.0000 1.0000 1611.2

threshold 93.0 0.9916 0.9998 23.5

lp-relax 47.5 0.8168 0.9771 0.4

lp2-relax 74.0 0.9775 0.9988 21.5

in-out 99.0 0.9918 0.9999 15.4

swap 100.0 1.0000 1.0000 36.5

in-out and swap are a local search heuristics that add/remove/swap

one element from current strategy to get a maximal increase in revenue.

...complexity remains open

31

Page 33: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Multiple items

When there are m available items the value of a strategy y is

revenue ifR accepts

prob thatR accepts

prob thatC\R rejects

V (y) =∑R⊆C

︷ ︸︸ ︷min

{1,m

|R|

}v(R) ·

︷ ︸︸ ︷∏i∈R

yi ·

︷ ︸︸ ︷∏i∈C\R

(1− yi)

32

Page 34: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Multiple items

When there are m available items the value of a strategy y is

revenue ifR accepts

prob thatR accepts

prob thatC\R rejects

V (y) =∑R⊆C

︷ ︸︸ ︷min

{1,m

|R|

}v(R) ·

︷ ︸︸ ︷∏i∈R

yi ·

︷ ︸︸ ︷∏i∈C\R

(1− yi)

= E[min{1, mP

i∈C Yi}∑i∈C viYi

]

33

Page 35: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Multiple items

When there are m available items the value of a strategy y is

revenue ifR accepts

prob thatR accepts

prob thatC\R rejects

V (y) =∑R⊆C

︷ ︸︸ ︷min

{1,m

|R|

}v(R) ·

︷ ︸︸ ︷∏i∈R

yi ·

︷ ︸︸ ︷∏i∈C\R

(1− yi)

= E[min{1, mP

i∈C Yi}∑i∈C viYi

]=∑i∈C

viyiE[min{1, m

1+Si}]

34

Page 36: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Multiple items

When there are m available items the value of a strategy y is

revenue ifR accepts

prob thatR accepts

prob thatC\R rejects

V (y) =∑R⊆C

︷ ︸︸ ︷min

{1,m

|R|

}v(R) ·

︷ ︸︸ ︷∏i∈R

yi ·

︷ ︸︸ ︷∏i∈C\R

(1− yi)

= E[min{1, mP

i∈C Yi}∑i∈C viYi

]=∑i∈C

viyiE[min{1, m

1+Si}]

Problem: find V ∗ = max0≤yi≤pi

V (y)

35

Page 37: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The trivial extension of LP gives an upper bound

V LP = max{∑

i∈C viyi :∑i∈C yi ≤ m and 0 ≤ yi ≤ pi

}which guarantees a constant factor of the optimum:

36

Page 38: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

The trivial extension of LP gives an upper bound

V LP = max{∑

i∈C viyi :∑i∈C yi ≤ m and 0 ≤ yi ≤ pi

}which guarantees a constant factor of the optimum:

V ∗ ≥ V (y) =∑i∈C

viyiE[min{1, m1+Si}]

≥ ρ(y)∑i∈C

viyi = ρ(y)V LP ≥ ρ(y)V ∗

ρ(y) = E[min{1, m1+S}] ≥ 1− 1

m+ 1

√1 + Var(S) P(S ≥ m)

find lower bound for ρ(y)...

37

Page 39: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Asymptotically optimal bound

Since Var(S) =∑i yi(1− yi) ≤ m and P(S ≥ m) ≤ 1, we get

ρ(y) ≥ 1− 1√m+1

hence

Theorem: V (yLP) is within a factor 1√m+1

from optimal

...and not better!

38

Page 40: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Sharper bound

ρ(y) ≥ 1−√

1+σ2

m+1 min{1, 12 + Mσ }

M = maxu≥0

√2u e−2u

∞∑k=0

(uk

k! )2 ∼ 0.46882235549939533

“if the mean number of successes in n independent heterogeneous

Bernoulli trials is an integer m then the median is also m”

(Jogdeo-Samuels’62, Siegel’01)

P[S ≥ m] ≤ 12 + P[S = m] ≤ 1

2 + Mσ

(latter estimate from C+Vaisman’08)

39

Page 41: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Extensions — Buy by Bulk

Dean, Goemans, Vondrak 04

• The difference is that customer i ∈ C demands si ≥ 1 units

• Problem is now NP-hard: for pi = 1 we get knapsack

• Computing V (y) is actually #P-complete

(e.g. count the number of perfect matchings in a bipartite graph)

40

Page 42: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Extensions — Multistage

• Medium-term: address offers in k successive rounds.

• Find an adaptive online algorithm that computes an optimal subset

of clients to address the offer in the next round.

41

Page 43: Optimal Targeting of Customers for a Last-Minute Sale · Optimal Targeting of Customers for a Last-Minute Sale R. Cominetti, J. Correa, Th. Rothvoss, J. San Mart n

Extensions — Pricing

• Personalized contact (email): price can be different for each client

• Pbb of accepting is a decreasing function of price pi : R+→ [0, 1]

• Select a price for each customer to maximize expected revenue

42