410 likes | 572 Views
Approximation Algorithms for Envy-free Profit-maximization problems. Chaitanya Swamy University of Waterloo Joint work with Maurice Cheung Cornell University. Profit-maximization pricing problems. seller with m indivisible non-identical items
E N D
Approximation Algorithms for Envy-free Profit-maximization problems Chaitanya Swamy University of Waterloo Joint work with Maurice Cheung Cornell University
Profit-maximization pricing problems • seller with m indivisible non-identical items • items available in limited supply or capacity • n customers wanting subset(s) of items • Profit-maximization problem: set prices on items and allocate items to customers so that • capacity constraints are respected • each customer can afford her allotted subset (value ≥ price) • GOAL: maximize seller profit = total price paid by customers • Envy-free (EF) profit maximization: also require that • customer is allotted set with maximum utility (=value–price)
Why envy-freeness? • Economic motivation – models a fair, “equilibrium” outcome • Fairness: seller is not biased towards any specific customer • Equilibrium: each customer is maximally happy, no incentive to deviate from/dispute the allocation (given the prices) • In settings where customers may lie about valuations, envy-free problem used as a metric for comparing profit-maximization truthful mechanisms • [Here: consider setting where valuations are known]
With arbitrary (set-based) customer valuation functions {vi(.)}, envy-free problem becomes very hard: • complexity issues in describing the valuation functions • even deciding if a given solution (pricing + allocation) is feasible is coNP-hard (even given a value oracle for computing vi(S) given set S) • even structured cases are not well understood Focus on a more structured setting – the single-minded setting
The single-minded problem (SMEFP) • m non-identical items: item e has supply ue (possibly ¥) • n customers: customer i desires a single subsetSi of items has valuation vi = max amount she will pay for Si • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
8 8 5 5 5 ue=2 for all items valuation vi set Si item • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
5 5 5 5 3 5 8 8 ue=2 for all items price pe • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
5 5 5 5 3 5 8 8 ue=2 for all items price pe winner • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
5 5 5 5 3 5 8 8 envy-free solution with profit = 2(3+5)+5=21 ue=2 for all items price pe winner • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
5 5 5 3 5 3 8 8 envy-free solution with profit = 2(5+3+3)=22 ue=2 for all items winner • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
5 5 5 5 2 5 8 8 NOT an envy-free solution ue=2 for all items • Set prices {pe} on items, choose a set W of winners s.t. • capacity constraints: |{iÎW: eÎSi }| ≤ uefor all items e • every winner can afford her set: vi ≥ ∑ eÎSi pe for all iÎW • envy-freeness:vi ≤ ∑ eÎSi pe for all iÏW • GOAL:maximize profit = ∑ iÎW ∑ eÎSi pe • = ∑ e pe.|{iÎW: eÎSi }|
Two special cases • Tollbooth problem: items are edges of a graph G, each set Si is a path of G – problem is APX-hard even when G is a star, all vi = 1, all ue = ¥ (Guruswami et al. (G+05)) • Highway problem: the graph G is a path Þ sets Siº intervals – problem is NP-hard even when the intervals are nested, unlimited supply: all ue = ¥ (Briest-Krysta)
Approximation Algorithm • Hard to solve the single-minded problem exactly – even very specialized cases are NP-hard. • Settle for approximate solutions. • Give polytime algorithm that always finds near-optimal solutions. • A is a a-approximation algorithm if, • A runs in polynomial time, • A(I) ≥OPT(I)/a on all instances I (a≥ 1). • ais called the approximation ratio of A.
Related Work • Guruswami et al. (G+05)introduced the envy-free problem • also introduced the structured case of unit-demand customers • NO previous approx. results for SMEFP (with limited supply) or even its special cases, e.g., tollbooth, highway problems • Previous settings considered • unlimited supply problem: logarithmic approximation bounds; G+05, Briest-Krysta (BK05), Balcan-Blum (BB05) • non-envy-free limited supply problem: quasi- or pseudo-polytime exact algorithms/approx. schemes for restricted SM instances; G+05, BK05, BB05, Grigoriev et al., Elbassioni et al. • non-EF problem with submodular+ valuations:Dobzinski et al., Balcan et al. • Techniques do not extend to the envy-free problem.
Related Work (contd.) • Hardness results: • general SM problem:m½-inapproximability even when ue =1"e; logc m-inapproximability (c<1) with unlimited-supply (Demaine et al.) • specialized cases are also APX- or NP-hard (G+05, BK05)
Our Results • Give the first approximation algorithms for single-minded envy-free profit-maximization (SMEFP)with limited supply • for any class of single-minded problems, given LP-based a-approx. algorithmfor finding themax-value allocation, find an EF solution with Profit ≥ O(OPTvalue/(a.log umax)) Þ O(a.log umax)-approx. • O(m½ . log umax)-approx. forgeneral SMEFP • O(log umax)-approx. for tollbooth problem on trees [“Often” a-inapprox. for max-value problem Þ a-inapprox. for SMEFP] • Reduction shows • concrete, explicit connection b/w OPTvalue and optimum profit • ratio of profit obtained by non-EF and EF solutions = O(a.log umax)
Social-welfare-maximization (SWM) problem Choose an allocation, i.e., winner-set W, with maximum total value that satisfies capacity constraints: |{iÎW: eÎSi }| ≤ ue"e LP relaxation: xi : indicates if i is chosen as a winner But how does the LP help in setting prices? Maximize ∑i vixi subject to, ∑i:eÎSi xi ≤ uefor all e 0≤xi ≤ 1 for all i. LP-optimum is an upper bound on optimum profit. Will use the LP to determine winner-set W, and will compare the profit achieved against the LP-optimum
OPT := max ∑i vixi (P) s.t. ∑i:eÎSi xi ≤ ue"e 0≤xi ≤ 1"i
OPT := max ∑i vixi (P) = min ∑e ueye + ∑i zi (D) s.t. ∑i:eÎSi xi ≤ ue"e s.t. ∑eÎSi ye + zi ≥vi "i 0≤xi ≤ 1"iye, zi ≥ 0 "e,i • Key insight: the dual variables (ye) furnish envy-free prices • By complementary slackness, at optimality, • if xi > 0 then ∑eÎSi ye + zi =viÞ ∑eÎSi ye ≤ vi • if xi < 1then zi = 0Þ ∑eÎSi ye ≥ vi • if ye > 0 then ∑i:eÎSi xi = ue • if x is an integer optimal soln. to (P), (y,z) is opt. soln. to (D), then x along with prices {ye} is a feasible soln. with profit ∑e ueye • x(P) need not have an integer optimal solution • x ∑e ueye could be much smaller than the optimum profit
Highway problem m edges on a path, edge e has capacity ue n customers, customer i has valuation vi for subpath Si OPT := max ∑i vixi (P) = min ∑e ueye + ∑i zi (D) s.t. ∑i:eÎSi xi ≤ ue"e s.t. ∑eÎSi ye + zi ≥vi "i 0≤xi ≤ 1"iye, zi ≥ 0 "e,i • if x is an integer optimal soln. to (P), (y,z) is opt. soln. to (D), then alloc’n. x+prices {ye} is a feasible soln. with profit ∑e ueye • x(P) need not have an integer optimal solution • (P) always has an integer optimal soln. – follows from total-unimodularity
(a) OPT := max ∑i vixi (P) = min ∑e ueye + ∑i zi (D) s.t. ∑i:eÎSi xi ≤ ue"e s.t. ∑eÎSi ye + zi ≥vi "i 0≤xi ≤ 1"iye, zi ≥ 0 "e,i • x ∑e ueye could be much smaller than the optimum profit • with unit capacities ue =1"e, there is an optimal soln. to (D) with zi = 0 for all iÞ get Profit = OPT What about higher capacities? ue=2 for all e vi =1 for all i In every optimal soln. to (D), have ∑e ye ≤ 1since (a) is a winner, so Profit= ∑e ueye ≤ 2, BUT setting price = 1 for all e yields optimal profit = n–1
ue=2 for all e vi =1 for all i (a) Idea: lowering capacities can increase profit Above: if we set ue =1 for all e, then there is an optimal soln. with ye = 1"eÞ get optimal profit Key technical lemma: can always find a capacity-vector u' ≤ u s.t. there exists an optimal dual soln. with capacities {u'e}with ∑e u'eye ≥ OPT/O(log umax) Þ if we solve (P) and (D) with capacities u' to get allocation and prices, then get soln. with Profit ≥ OPT/O(log umax)
The Algorithm Consider uniform capacities ue =U for simplicity (Pk),(Dk): primal, dual LPs with ue =k, OPT(k) : common optimal value of (Pk) and (Dk) • For k=1,2,…,U, find optimal soln. (y(k),z(k)) to (Dk) that maximizes ∑e kye. • Choose c ≤ U that maximizes ∑e cye(c). • Return {ye(c)}as prices, optimal soln. to (Pc)as allocation. Can be made polytime by considering k = powers of (1+e).
OPT(U) OPT(1) U 1 Analysis OPT(k) := max ∑i vixi (Pk) = min ∑e kye + ∑i zi (Dk) s.t. ∑i:eÎSi xi ≤ k"e s.t. ∑eÎSi ye + zi ≥vi "i 0≤xi ≤ 1"iye, zi ≥ 0 "e,i Lemma:OPT(.) is a concave f’n. OPT(.) is linear b/w k and k' iff $common soln. (y,z) that is optimal for both (Dk), (Dk') Why? If c=lk+(1–l)k', opt. soln. to (Dc) is feasible for (Dk), (Dk')
OPT(k)-OPT(bk) k–bk Let bk=break pt. of OPT(.) before k Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . bk k
OPT(k)-OPT(bk) k–bk Let bk=break pt. of OPT(.) before k Lemma:∑e kye(k) ≥ k. . . OPT(k) . Proof: Let (y,z) be common optimal solution to (Dk), (Dbk). RHS = ∑e kye ≤ ∑e kye(k). . . bk k
Lemma:∑e kye(k) ≥ k. OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return Profit P*≥ 2.HU . . OPT(k) . . . bk k
OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return Profit P*≥ Proof:We have P* ≥ ∑e kye(k)"k. 2.HU P*(U–bU)/U≥ OPT(U)–OPT(bU) P*(k–bk)/k ≥ OPT(k)–OPT(bk) P* ≥ OPT(1) [b1=0] . . . . . . Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . Suppose first that bk = k-1"k. bk k
OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return Profit P*≥ Proof:We have P* ≥ ∑e kye(k)"k. 2.HU . . . . . . Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . Suppose first that bk = k-1"k. bk k P*/U = P*(U–bU)/U≥ OPT(U)–OPT(bU) P*/k = P*(k–bk)/k ≥ OPT(k)–OPT(bk) P* = P* ≥ OPT(1) [b1=0] P*.HU≥ OPT(U)
OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return Profit P*≥ Proof:We have P* ≥ ∑e kye(k)"k. 2.HU . . . . . . Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . May assume that bk Î[k-1,k) "k. bk k k+1 bk+1 P*(U–bU)/U≥ OPT(U)–OPT(bU) P*/k ≥ [OPT(bk+1)–OPT(k)]/[bk+1–k] P*(k–bk)/k ≥ OPT(k)–OPT(bk) P* ≥ OPT(1) [b1=0]
OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return profit P*≥ Proof: We have P* ≥ ∑e kye(k)"k. 2.HU . . . . . . Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . May assume that bk Î[k-1,k) "k. bk k k+1 bk+1 P*(U–bU)/U≥ OPT(U)–OPT(bU) P*(bk+1–k)/k ≥ OPT(bk+1)–OPT(k) P*(k–bk)/k ≥ OPT(k)–OPT(bk) P* ≥ OPT(1) [b1=0]
OPT(k)-OPT(bk) OPT(U) k–bk Theorem: Return profit P*≥ Proof: We have P* ≥ ∑e kye(k)"k. 2.HU . . . . . . Lemma:∑e kye(k) ≥ k. . . OPT(k) . . . May assume that bk Î[k-1,k) "k. bk k k+1 bk+1 P*/U ≥P*(U–bU)/U≥ OPT(U)–OPT(bU) P*/k ≥ P*(bk+1–k)/k ≥ OPT(bk+1)–OPT(k) P*/k ≥ P*(k–bk)/k ≥ OPT(k)–OPT(bk) P* ≥ P*(b2 –1) ≥ OPT(b2)–OPT(1) P* ≥ P* ≥ OPT(1) [b1=0] 2P*.HU≥ OPT(U)
Remark: Can prove that all break pts. bk are integers i.e., dual soln. changes only at integer values of k Þ can take bk = k-1"k and save factor of 2 Proof heavily uses total-unimodularity of constraint matrix • Open Question: • What does this integer-breakpoint property mean? • Implications about structure of polytope? Applications in combinatorial optimization (CO)? How does it relate to other concepts in CO? • Are there other interesting classes of problems with (“approx.”) integer-breakpoint property?
The general problem (SMEFP) OPT := max ∑i vixi (P) = min ∑e ueye + ∑i zi (D) s.t. ∑i:eÎSi xi ≤ ue"e s.t. ∑eÎSi ye + zi ≥vi "i 0≤xi ≤ 1"iye, zi ≥ 0 "e,i x(P) need not have an integer optimal solution if we have a winner-set W s.t. {i: xi =1} Í W Í {i: xi >0}, and ue ≥ |{iÎW: eÎSi }| ≥ ∑i:eÎSi xi /a for every e, then (W,{ye}) is a feasible soln. with Profit ≥∑e ueye/a • Recall complementary slackness: at optimality, • if xi > 0 then ∑eÎSi ye + zi =viÞ ∑eÎSi ye ≤ vi • if xi < 1then zi = 0Þ ∑eÎSi ye ≥ vi • if ye > 0 then ∑i:eÎSi xi = ue
Can use an LP-baseda-approx. algorithm for SWM-problem to obtain W with desired properties • W ¬ {i: xi =1} • decompose(remaining fractional soln.)/ainto convex combination of integer solns. (Carr-Vempala, Lavi-S) • Key technical lemma: can always find a capacity-vector u' ≤ u s.t. there exists an optimal dual soln. with capacities {u'e}with ∑e u'eye ≥ OPT/O(log umax) • Þ if we solve (Du') to get prices, round opt. soln. to (Pu') to get W, then get soln. with Profit ≥ OPT/O(a.log umax)
How to deal with non-uniform capacities? Similar approach: obtain a bound on max. profit achievable with an optimal dual soln. with capacities {u'e} Leverage this to get a telescoping-sum argument BUT, OPT(.) is now a multivariate function – makes both steps more difficult Need to define and analyze breakpoints, slopes of OPT(.) along suitable directions.
Algorithm for (general) SMEFP (Pk),(Dk): primal, dual LPs with ue =ke"e, OPT(k) : common optimal value of (Pk) and (Dk) • For suitable vectors k=k1, k2,…,kr, (r: polynomial) find optimal soln. (y(k),z(k)) to (Dk) that maximizes ∑e keye. • Choose vector cÎ{k1, k2,…,kr} that maximizes ∑e ceye(c). • Return {ye(c)}as prices, round optimal soln. to (Pc)to obtain W.
Summary of Results • Give the first approx. algorithms for single-minded envy-free profit-maximization problems with limited supply • primal LP for SWM-problem can be rounded to get allocation; dual LP furnishes envy-free prices • can find capacity-vector u'≤u and opt. dual soln. (y,z) for (Du') s.t. ∑e u'eye ≥ OPT/O(log umax) • so LP-based a-approx. for SWM-problemÞO(a.log umax)-approx. for envy-free problem • Same guarantees when customers desire multiple disjoint multisets, and for non-EF versions of these problems • Envy-freeness hurts seller by at most O(a.log umax)-factor
Open Questions • Results for (more) general set-based valuation functions, say, given a demand-oracle for each customer. Need a new upper bound – OPTSWM can be >> opt. profit (Blum) • Improved results for structured SM problems. Constant-factor for tollbooth problem? PTAS for highway problem? • Better understanding of the integer-breakpoint property. • Implications about structure of polytope? Applications in combinatorial optimization (CO)? How does it relate to other concepts in CO? • Are there other interesting classes of problems with (“approx.”) integer-breakpoint property?