pricing partially compatible products david kempe, university of southern california adam meyerson,...

34
Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki, MediaDefender Inc. Ramnath Chellappa, Emory University This paper to appear in ACM Conference on Electronic Commerce (EC) 2007.

Upload: marilynn-newton

Post on 20-Jan-2016

215 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

Pricing Partially Compatible Products

David Kempe, University of Southern CaliforniaAdam Meyerson, University of California, Los AngelesNainesh Solanki, MediaDefender Inc.Ramnath Chellappa, Emory University

This paper to appear in ACM Conference on Electronic Commerce

(EC) 2007.

Page 2: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

2

Two Companies Selling Equivalent Software Products

Word Processor

Web Browser

Operating System

Spreadsheet

Web Page Editor

MP3 Software

Word Processor

Web Browser

Operating System

Spreadsheet

Web Page Editor

MP3 Software

Page 3: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

3

Products Differ in Price and Quality

Word Processor

Q=5 P=3

Web Browser

Q=4 P=0

Operating System

Q=9 P=4

Spreadsheet

Q=3 P=2

Web Page Editor

Q=5 P=4

MP3 Software

Q=3 P=4

Total Q=29 and P=17

Word Processor

Q=3 P=2

Web Browser

Q=8 P=3

Operating System

Q=4 P=0

Spreadsheet

Q=2 P=0

Web Page Editor

Q=6 P=6

MP3 Software

Q=3 P=2

Total Q=26 and P=13

Customer Prefers

Page 4: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

4

Customer’s Strategy: Mix and Match?

Word Processor

Q=5 P=3

Web Browser

Q=4 P=0

Operating System

Q=9 P=4

Spreadsheet

Q=3 P=2

Web Page Editor

Q=5 P=4

MP3 Software

Q=3 P=4

Word Processor

Q=3 P=2

Web Browser

Q=8 P=3

Operating System

Q=4 P=0

Spreadsheet

Q=2 P=0

Web Page Editor

Q=6 P=6

MP3 Software

Q=3 P=2

Why not? Not everything is compatible. Using incompatible productsis okay, but it incurs some additional costs. It may be better topurchase an inferior product to avoid these added costs.

Page 5: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

5

Our Model

We have a set of n products labeled 1…n. Each product has two different versions, one made by each company.

Each product has a price for each company’s version: p1j is company one’s price for product j, and p2j is company two’s price.

Each product has a quality rating for each company’s version: 1j is company one’s quality for j, and 2j is company two’s quality.

Each ordered pair of products (i,j) has an incompatibility penalty ij which applies if we purchase product i from company 1 and

product j from company 2.

The customer selects a set of products S to purchase from company 1, purchasing the rest from company 2.

Page 6: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

6

Our Results

We consider each of the following problems:Customer’s Selection Problem: Which products should the customer buy from each company? We give a polynomial-time algorithm.Budgeted Improvement Problem: If company 1 can improve product qualities by some total amount B, how should the improvement be allocated? We prove this is NP-Hard and equivalent to MaxSBCC.Pricing Problem: How should company 1 price its products in order to maximize revenue? We give a polynomial-time algorithm. Compatibility Alteration Problem: How should company 1 set compatibilities to maximize revenue? We prove this is NP-Hard and give a PTAS by reduction to Knapsack. Compatibility Improvement Problem. If company 1 can only improve compatibilities, how can it maximize revenue? We prove this is NP-Hard and hard to approximate, but give algorithms for some special cases via duality.

Page 7: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

7

Previous Work on Compatibility

A number of previous results in Economics deal with compatibility.

N. Economides. Desirability of compatibility in the absence of network externalities. American

Economic Review, 79:1165-1181, 1989.

J. Farrell and G. Saloner. Standardization, compatibility, and innovation. Rand Journal of Economics,

16:70-83, 1985.

J. Farrell and G. Saloner. Converters, compatibility, and control of interfaces. Journal of Industrial

Economics, 40:9-36, 1992.

M. Katz and C. Shapiro. Network externalities, competition, and compatibility. American Economic

Review, 73:424-440, 1985.

C. Malutes and P. Regibeau. “Mix and Match”: Product compatibility without network externalities.

Rand Journal of Economics, 19:221-234, 1988.

C. Malutes and P. Regibeau. Compatibility and bundling of complementary goods in a duopoly. The

Journal of Industrial Economics, 40:37-54, 1992.

Page 8: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

8

Our Work vs. Previous Work in Economics

Previous results considered the situation where products are either fully compatible or fully incompatible. This makes sense for mechanical components (for example) where they will simply work together or not.

We are the first to consider the possibility of partial incompatibility, which makes sense in a software application, where incompatibility often manifests itself as an “annoyance” to the end-user, who must convert file types, purchase emulators, or check that documents import properly from one application to another.

We also consider the scenario of digital goods, which has become standard in the computer science literature (for example on mechanism design) but differs from the model in previous economic results (including all the previous work on incompatibility).

Page 9: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

9

Customer Selection Problem

Customer’s Selection Problem

Budgeted Improvement Problem

Pricing Problem

Compatibility Alteration Problem

Compatibility Improvement Problem

Page 10: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

10

Customer Selection Problem

We consider a graph with vertices corresponding to the various products along with special designated source and sink nodes s,t. We will find an s-t cut S, where those vertices in S are the products purchased from company one (along with the source). We prove a correspondence between our problem and minimum cut.

s

OS

WP

WB

t

MP

S

p1WP+2WP

p2MP+1WP

WPWB

Three kinds of edges:Edges to sink capture p1,2

Edges from source p2,1

Edges between products

Min Cut Customer Selection

Page 11: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

11

Budgeted Improvement Problem

Customer’s Selection Problem

Budgeted Improvement Problem

Pricing Problem

Compatibility Alteration Problem

Compatibility Improvement Problem

Page 12: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

12

Budgeted Improvement

We are allowed to improve the quality of company 1’s products in order to maximize company 1’s revenue. Obviously if we just increase the quality to infinity, all products will be purchased from company 1. The more interesting problem is, if we can improve the products by a total of at most B, how much revenue can we generate?

In the cut formulation of the customer’s problem, we are trying to increase the weight of edges from s by at most B so as to increase the S size of the minimum cut.

s t

Min cut

Increase

Page 13: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

13

Facts about Budgeted Improvement

Claim: Let G be a graph with capacities ce where S* is the

minimum s-t cut, of capacity C*. Select some other cut S with capacity C≥C*. By increasing the capacities out of s by a total of at most C-C*, we can ensure that there is a new minimum cut S’ with SS’.

Proof: For every node in S-S*, we add an edge from the source with capacity C-C*. This guarantees the desired cut property. Since minimum cut equals maximum flow and the capacity of cut S is unchanged, there is now a maximum flow in this graph of value C. There is an augmenting flow from the original maximum flow to this new flow, of value C-C*. We reduce the capacity of the additional edges to equal the amount of augmenting flow placed upon them.

Page 14: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

14

Budgeted Improvement and MaxSBCC

We can write the following IP for budgeted improvement.

Maximize vpvxv

Subject to xs=1 and xt=0For all e=(u,v) we have ye≥xv-xu

eyece ≤ C* + Bxv,ye{0,1}

This is exactly a weighted version of Maximum-Size Bounded Capacity Cut. In this problem, the goal is to find a cut with the largest possible number of nodes on the “s” side, while maintaining a bounded cut capacity. The problem is known to be NP-Hard, and there is an algorithm which exceeds the capacity increase (B) by at most O(log2 n) while obtaining optimum weighted value of nodes on the “s” side (Feige and Krauthgamer, Siam Journal on Computing 2002). No results without increasing the budget are known.

Page 15: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

15

Pricing Problem

Customer’s Selection Problem

Budgeted Improvement Problem

Pricing Problem

Compatibility Alteration Problem

Compatibility Improvement Problem

Page 16: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

16

Pricing Integer Program

We can write a very similar program for the pricing problem. It looks like this:

Maximize vpvxv - RSubject to xs=1 and xt=0For all e=(u,v) we have ye≥xv-xu

eyece ≤ C* + Rxv,ye{0,1}

Here we can think of setting the prices really high, and then offering a rebate of R. Reducing the price is equivalent to increasing the quality, but it also reduces our revenue. We note that at optimality, the red constraint must be tight.

Page 17: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

17

Modifying the Pricing Program

Maximize vpvxv - eyece

Subject to xs=1 and xt=0For all e=(u,v) we have ye≥xv-xu

xv,ye{0,1}

But this simply requires us to find an s-t cut S which maximizes:iSpi - iS,jSc(i,j) which is the same as minimizing:iSpi + iS,jSc(i,j)

This is just a minimum-cut problem, equivalent to reducing the capacity of all edges (i,t) by pi. This proves the following lemma:

Lemma: With the optimal price setting, company 1 sells exactly the same set S of products as if it gives away all its products for free.

Page 18: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

18

Coming up with Optimum Prices

We now know how to determine (in polynomial time) the set S of products company 1 sells with the optimum pricing policy. Now we want to determine the prices.

We again use max-flow and min-cut duality. We draw the graph corresponding to zero prices for company 1 and find the maximum flow. We then increase the (i,t) edges to some large capacity and find the maximum augmenting flow. If we change these new edge capacities to equal the augmenting flow on them, we have found the optimum prices.

Theorem: There is a polynomial-time algorithm for selecting profit-maximizing best-response prices.

Page 19: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

19

Compatibility Alteration Problem

Customer’s Selection Problem

Budgeted Improvement Problem

Pricing Problem

Compatibility Alteration Problem

Compatibility Improvement Problem

Page 20: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

20

Compatibility Alteration

Suppose company 1 can unilaterally alter compatibilities. In the optimum solution, let S be the set of products the customer purchases from company 1. Suppose we were to set incompatibilities to be zero for pairs (u,v) with uS and vV-S, and set incompatibility to be infinite for all other pairs. Clearly this does not change the minimum cut from (S, V-S) to something else.

We observe that the customer can always be forced to buy from only one company by setting infinite incompatibility. If this means buying all from company 1 then it’s the optimum solution. So we assume this means buying all from company 2.

Now S can be the set of products sold by company 1 if any only if S is a minimum cut under the capacity assignment described.

Page 21: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

21

Possible Minimum Cuts

The only finite-capacity cuts under this assignment are S, {s}, and V-{t}. We know that {s} is a smaller cut than V-{t}.

s t

S

0

0 ∞

Page 22: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

22

Defining Minimum Cut

It follows that S can be the set of products sold by company 1 if and only if the capacity of cut S is smaller than the capacity of cut {s}. This means:

iS(2i+p1i) + iS(1i+p2i) ≤ i(1i+p2i)

iS(1i+p2i-2i-p1i) ≥ 0

We define d(i) = 1i+p2i-2i-p1i and observe that the optimum

solution S will always include all i such that d(i)≥0. We can then define a value D=d(i)>0d(i). Then the optimum solution is the set S maximizing the total price pS subject to iS, d(i)<0(-d(i)) ≤ D.

This is exactly Knapsack, with “values” pi, weights -d(i), and

weight bound D. As a result, the problem is NP-Hard but has a PTAS.

Page 23: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

23

Compatibility Improvement Problem

Customer’s Selection Problem

Budgeted Improvement Problem

Pricing Problem

Compatibility Alteration Problem

Compatibility Improvement Problem

Page 24: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

24

Compatibility Improvement

We consider the case where company 1 can improve compatibilities arbitrarily, but cannot worsen them. This corresponds to looking for new capacities ce’ on each edge not incident with the source or sink, such that ce’≤ce and the value of pS (where S is the minimum cut) is as large as possible.

We will call such a set of capacities valid capacities, and we call a set S which is a minimum s-t cut for some set of valid capacities a minimizable cut.

Note that we can assume for any vertex i, that i does not have both an edge to the source and the sink. Otherwise we can reduce the capacity of these edges by an equal amount without effecting the cuts.

Page 25: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

25

Properties of Minimizable Cuts

Suppose there is some cut S which is minimizable. Thus there exist some capacities ce’≤ce (but ce’=ce for edges adjoining source

or sink) such that S is a minimum cut.

Now consider increasing the capacity of edges which do not cross S so that ce’’=ce. This does not increase the capacity of cut S, and

does not decrease the capacity of any cut, so S is still a minimum cut.

Now consider decreasing the capacity of edges which cross S (and do not have the source or sink as an endpoint) such that ce’’=0. This decreases the capacity of cut S by ce’ and cannot decrease the capacity of any other cut by more than ce’, so S remains a

minimum cut.

So if S is minimizable, then it is the min cut under c’’ capacities.

Page 26: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

26

S-Exclusive Flows

We will say that a flow F is S-Exclusive for some set S containing the source but not the sink if:

F(i,t)=c(i,t) for all iS

F(i,j)=0 for all jS with jt.

Theorem: Let S be a partition with c(s,j)=0 for all jS. Then S is

minimizable if and only if there exists an S-Exclusive flow F.

Proof: If S minimizable, then let F be the maximum flow with capacities ce’’. We can see F is S-Exclusive. If there exists a flow F

which is S-Exclusive, then it will also be a feasible flow with capacities ce’’, and its value is equal to the value of cut S under those capacities, which implies S is a minimum cut for ce’’ and

thus minimizable.

Page 27: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

27

A Simple Special Case

Suppose all edges into t have capacity 0 or 1, and all the prices are uniform. This corresponds to “almost equivalent” products. In this case we can compute the best minimizable cut (and therefore solve the compatibility improvement problem) in polynomial time.

Proof: Just compute an integral maximum s-t flow. We can modify the flow such that any node with positive incoming flow will saturate its (capacity zero or one) edge to the sink without effecting the total flow value. After this modification, the flow is S-Exclusive for some set S, and |S| is the number of nodes with c(i,t)=0 plus the value of the flow. No larger minimizable set exists.

Page 28: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

28

An Approximation

Suppose all prices are 1 and the edges into t have integral capacities in the range [0,C] for some C. We consider the following greedy approximation algorithm:

1. Start with S{i: c(i,t)=0}

2. Repeat1. Among all iS such that S{i} is minimizable, let i be the one

minimizing c(i,t).

2. Set SS{i}3. Until S{i} not minimizable for any i4. Return S

Page 29: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

29

Proof of Approximation

Suppose the greedy algorithm finds set S, and the optimum solution is set S*. We claim that |S|≥|S*|/C.

Proof: There exist corresponding exclusive flows F and F*. For any set R including source but not sink, define (R) to be the maximum value s-t flow that does not use any edges (i,j) with jR unless j=t. We observe that R is minimizable if and only if (R)=iRc(i,t).

Let A be a non-empty node set disjoint from S. We prove that:

(SA)≤ (S) + iAc(i,t) - |A|

We observe that the flow for the union can be formed by augmenting the flow for S and therefore saturates edges from S to t. We can then view the flow as giving us a DAG, and progressively reroute flow to saturate earlier DAG vertices sink edges.

Page 30: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

30

Proof of Approximation

The argument is that if (SA) was larger, we could keep “pushing flow back” through the DAG until we saturate some node’s edges to t where the node’s only incoming flow is from S. This node then could be added to S, implying the greedy algorithm would not terminate.

Now we consider the set A=S*-S. Applying the inequality along with the maximum capacity of C gives us the desired bound.

Page 31: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

31

Hardness Results

Even if all prices and all capacities into the sink are from {0,1}, the maximum-price minimizable cut cannot be approximated to better than (n1-) for any >0.

Even if all prices are 1, the maximum-size minimizable cut cannot be approximated to better than (n(1/3)-) for any >0.

Both these results are based on reduction from independent set.

Page 32: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

32

Idea of Independent Set Reduction

We want to approximate

independent set on graph G.

We create a capacitated graph with

a node for each vertex and each

edge in G, plus s and t. Edge nodes

have p=0, vertex nodes p=1.

a b

c da

a,b a,c b,c c,db,d

b c d

t

s

2 23 3

Page 33: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

33

Proof Sketch

An S-exclusive flow which includes

the node for a must saturate the

edge (a,t). Since the capacity of

this edge is degree(a), we have to

send all flow from nodes

representing edges including a

through a. This prevents us from

selecting two adjacent nodes,

giving us a correspondence

between S-exclusive flows,

minimizable cuts, and independent

sets in G.

We can transform the vertex nodes

as follows.

a

t

(a)

a

a

a t

Page 34: Pricing Partially Compatible Products David Kempe, University of Southern California Adam Meyerson, University of California, Los Angeles Nainesh Solanki,

34

Open Problems

Combining the problems. What if company 1 can modify any of price, compatibility, quality? How do we combine the results?

Improving MaxSBCC approximation.

What if there’s more than two companies? Even customer’s selection problem is NP-Hard (multi-way cut) but there are good approximations. How do companies strategize here?

What if different customers have different quality ratings for products?

What about pricing games between companies?

What about auctions/mechanisms between customers and companies?