wang ke mining revenue-maximizing bundling configuration
TRANSCRIPT
Mining Revenue-Maximizing Bundling Configuration
Loc Do*, Hady Lauw*, Ke Wang+
*Singapore Management University+Simon Fraser University
Bundling
• Selling two or more items at one price
• Beneficial to consumers by lowering the overall price (compared to buying the items separately)
• Beneficial to sellers by gaining higher overall revenue (from selling more items to more consumers)
1 2 30
2
4
6
8
10
12
14
No of consumers willing to pay the price or higher
Price
(dol
lar)
The lower the price, the more consumers willing to pay at least that price
Demand curve plots the number of consumers willing to pay at least a certain price
1 2 30
2
4
6
8
10
12
14
No of consumers willing to pay the price or higher
Price
(dol
lar)
Sellerrevenue
Consumersurplus
Deadweightloss
Suppose we now fix the price at $8
Willingness to Pay for Items
Consumer Willingness to Pay
Buy A at price = 8?
Seller revenue
Consumer surplus
Deadweight loss
u1 $12 ✔ $8 $4 0u2 $8 ✔ $8 0 0u3 $5 ✖ 0 0 $5Total 16 4 5
Willingness to Pay for Bundles
• A function of willingness to pay for items– may incorporate discount factors for
complementary vs. substitute products– assumed to be linear sum in this talk for simplicity
Consumer
Item A Item B Bundle AB
u1 $12 $4 $16
u2 $8 $2 $10
u3 $5 $11 $16
Individual Items – Revenue: $27
Consumer
WA WBPricing A
at $8Pricing B
at $11
u1 $12 $4 ✓u2 $8 $2 ✓u3 $5 $11 ✓
Consumer
WA WBPricing A
at $8Pricing B
at $11
u1 $12 $4 ✓u2 $8 $2 ✓u3 $5 $11 ✓
Consumer
WA WBWAB Pricing AB at $16
u1 $12 $4 $16 ✓ ✓u2 $8 $2 $10
u3 $5 $11 $16 ✓ ✓
Components – Revenue: $27
Pure Bundling – Revenue: $32
Challenges
• It works on some cases, but not for others• Challenge #1 (Data):
– Dependent on willingness to pay profile of consumers in the population
• Challenge #2 (Computation):– Combination of items in a potential bundle– For N items, up to 2N-1 potential bundles– Many possible configurations of bundles
Traditional Marketing Approach to Willingness to Pay
• Relying on explicit solicitation from consumers– e.g., market research, surveys– unscalable
• Conjoint analysis:– decompose consumer preference for items to
preferences for specific features• Discrete choice theory:
– give consumer a choice of two products with different attributes, and observe the selection
Key Idea
• Leverage on the wealth of consumer preference data
Estimating Willingness to Pay from Ratings• Willingness to pay for an item is a function of:
– intrinsic value of the item (sales price)– extrinsic value of the item to the user (rating)
• A simple model: linear function of price and rating• Richer models: may consider features or regression
Rating Willingness to Pay
5 $12.50
4 $10.00
3 $7.50
2 $5.00
1 $2.50
Item sales price = $10Rating base = 4
Using this mapping, we find that revenue-maximizing pricing is close to Amazon’s actual pricing.
Modeling More Realistic Adoption Behaviors
15
Willingness to Pay = $10
Determination of “Optimal” Price
• Find the price that optimizes the expected revenue of an item or a bundle
• Discretized price levels– computation through bucketing strategies
Bundle Configuration Problem• Given:
– a set of M users– a set of N items– M x N matrix of willingness to pay for items
• willingness to pay for bundles implicitly modeled by a function– a positive integer k (maximum size of a bundle)
• Find:– a partitioning of the N items– each sub-partition is of size no larger than k– resulting in the highest total revenue
17
Assumptions
• Revenue maximization objective– Profit maximization if marginal cost is known– Incorporate other factors e.g., consumer surplus
• Single unit demand– can be relaxed if demanded quantity is known
• No budget constraint• No supply constraint
Matching (graph theory)
• A set of edges without common vertices– maximum: most number of edges– maximum weight: highest total edge weights
Optimal Solution for k = 2 with Graph Matching
Consumer
Item ApA = 10
Item BpB = 10
Item CpC = 10
Bundle ABpAB = 14.5
Bundle ACpAC = 12
Bundle BCpBC = 12
u1 $10.0 $10.0 $2.0 $20.0 $12.0 $12.0
u2 $10.0 $4.5 $10.0 $14.5 $20.0 $14.5
u3 $4.5 $10.0 $10.0 $14.5 $14.5 $20.0
A B
C
20 20
20
36 36
43.5
(a) Input Graph (b) Maximum Weight Matching
A B
C20
43.5
How about for k = 3 and beyond?
Maximum weight hypergraph matching is NP-hard
A B
C
20 20
20
36 36
43.5
66
Consumer
Item ApA = 10
Item BpB = 10
Item CpC = 10
Bundle ABpAB = 14.5
Bundle ACpAC = 12
Bundle BCpBC = 12
Bundle ABCpABC = 22
u1 $10.0 $10.0 $2.0 $20.0 $12.0 $12.0 $22.0
u2 $10.0 $4.5 $10.0 $14.5 $20.0 $14.5 $24.5
u3 $4.5 $10.0 $10.0 $14.5 $14.5 $20.0 $24.5
A B
C
66
3-uniform hypergraph
A B
C
Maximum matching on 3-uniform hypergraph is known to be NP-hard
C D
E
Bundle Configuration is NP-hard for k ≥ 3
A B
C
3-uniform hypergraph matching is an instance of 3-sized bundle configuration problem
A B
C
1 1
1
2 2
2
3 + e
How about for k = 3 and beyond?
Maximum weight hypergraph matching is NP-hard
A B
C
20 20
20
36 36
43.5
66
Consumer
Item ApA = 10
Item BpB = 10
Item CpC = 10
Bundle ABpAB = 14.5
Bundle ACpAC = 12
Bundle BCpBC = 12
Bundle ABCpABC = 22
u1 $10.0 $10.0 $2.0 $20.0 $12.0 $12.0 $22.0
u2 $10.0 $4.5 $10.0 $14.5 $20.0 $14.5 $24.5
u3 $4.5 $10.0 $10.0 $14.5 $14.5 $20.0 $24.5
A B
C
66
Heuristic#1: Iterative Graph Matching (k=2)
A B
C
20 20
20
36 36
43.5
(1a) Input Graph (1b) Output Matching
Iteration #1
A B
C20
43.5
C
AB
20
43.5
66 ABC66
(2a) Input Graph (2b) Output Matching
Iteration #2
Heuristic #2: Greedy Algorithm
• Begin with a configuration of individual items (i.e., bundles of size 1)
• Iterate till no more revenue gain:– For each pair of bundles
• Compute the expected revenue gain– Merge the pair with highest gain into a new bundle
Heuristic #1: Iterative Matching
Heuristic #2: Greedy Algorithm
In each iteration, only one new bundle is
formed.
In each iteration, up to N/2 new bundles are
formed.
O(MN2) for revenue computation.
O(N2.5) for matching.
O(MN2) for revenue computation.
O(N2log N) for greedy.
Bundling Strategies
A ✓
B
AB
✓
✓
✓
✓✓
IndividualComponents
PureBundling
MixedBundling
Consumer
WA WBWAB Pricing AB at $16
u1 $12 $4 $16 ✓ ✓u2 $8 $2 $10
u3 $5 $11 $16 ✓ ✓
Pure Bundling – Revenue: $32
Consumer
WA WBWAB Pricing A at $8
Pricing AB at $16
u1 $12 $4 $16 ✓ ✓u2 $8 $2 $10 ✓u3 $5 $11 $16 ✓ ✓
Mixed Bundling – Revenue: $40
Data• User preferences as indicated by ratings• Amazon ratings on books (UIC)• 4,449 users, and 5,028 items
30
Rating Frequency Percentage
5 52,811 49%
4 31,499 29%
3 14,356 13%
2 5,841 5%
1 3,784 3%
Total 108,291 100%
Item Price Frequency Percentage
<= $5 57 1%
$5.01 - $10 2,464 49%
$10.01 - $15 1,280 25%
$15.01 - $20 994 20%
$20.01 - $25 140 3%
> $25 93 2%
Total 5,028 100%
Metrics
• Revenue coverage– total possible revenue = sum all willingness to pay– percentage of total possible revenue that is captured– up to 100%
• Revenue gain– compare to revenue from selling items (no bundles)– percentage gain of bundling over non-bundling
Methods
• Mixed bundling:– MixedMatching– MixedGreedy– MixedFreqItemset (baseline)
• Pure bundling:– PureMatching– PureGreedy– PureFreqItemset (baseline)
Revenue Gain vs. Time
Scalability
Comparison to Optimal Solution (ILP)
Method N = 10 N = 15 N = 20 N = 25
PureMatching 78.1 77.8 77.9 77.2
PureGreedy 78.1 77.8 77.9 77.2
Optimal (ILP) 78.1 77.8 77.9 -
Revenue Coverage (percent)
Method N = 10 N = 15 N = 20 N = 25PureMatching 0.01 0.01 0.01 0.02
PureGreedy 0.07 0.10 0.13 0.16
Optimal (ILP) 0.20 4.60 235.38 -
Running Time (seconds)
Conclusion
• Willingness to pay:– mining consumer preferences from ratings data
• Bundle configuration:– NP-hard for k ≥ 3– Graph matching and greedy algorithms
• Future work:– Generalization to non-monetary utility functions