Approximation Algorithms for Envyfree Profitmaximization problems Chaitanya Swamy
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
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 co. NP-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 subset Si of items Set prices has {pe} valuation on items, vchoose set W of winners she will pay i = maxaamount s. t. Si for – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
ue= 2 for all items item 5 5 8 5 valuation v set Si i 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
ue= 2 for all items 5 5 5 3 8 5 5 price pe 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
ue= 2 for all items winner 5 5 5 3 8 5 5 price pe 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
envy-free solution with profit = 2(3+5)+5 = 21 ue= 2 for all items winner 5 5 5 3 8 5 5 price pe 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
envy-free solution with profit = 2(5+3+3) = 22 ue= 2 for all items winner 5 3 5 5 8 5 3 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
NOT an envy-free solution ue= 2 for all items 5 5 5 2 8 5 5 8 Set prices {pe} on items, choose a set W of winners s. t. – capacity constraints: |{ iÎW: e Î Si }| ≤ ue for 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ÎS pe
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 NPhard. Settle for approximate solutions. Give polytime algorithm that always finds nearoptimal solutions. A is a a-approximation algorithm if, A runs in polynomial time, A(I) ≥ OPT(I)/a on all instances I (a ≥ 1). • • a is 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 (BK 05), Balcan-Blum (BB 05) – non-envy-free limited supply problem: quasi- or pseudopolytime exact algorithms/approx. schemes for restricted SM instances; G+05, BK 05, BB 05, Grigoriev et al. , Elbassioni et al.
Related Work (contd. ) • Hardness results: – general SM problem: m½-inapproximability even when ue = 1 "e; log c m-inapproximability (c < 1) with unlimited-supply (Demaine et al. ) – specialized cases are also APX- or NP-hard (G+05, BK 05)
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 aapprox. algorithm for finding the max-value allocation, find an EF solution with Profit ≥ O(OPTvalue/(a. log umax)) Þ O(a. log umax)-approx. – O(m½. log umax)-approx. for general 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
Social-welfare-maximization (SWM) problem Choose an allocation, i. e. , winner-set W, with maximum But how does the LP help in setting prices? total value that satisfies capacity constraints: |{ iÎW: eÎSi }| ≤ ue "e LP relaxation: : indicates if i is chosen as a winner Maximize xi ∑ v x i i i subject to, ∑i: eÎSi xi ≤ ue for 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 s. t. ∑i: eÎSi xi 0 ≤ xi ≤ 1 (P) ≤ ue "e "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 "i ye, 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 < 1 then 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 S OPTi : = 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 "i ye, 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
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 "i ye, 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 (a) In every optimal soln. to (D), have ∑e ye ≤ 1 since (a) is a winner, so Profit = ∑e ueye ≤ 2, BUT setting price = 1 for all e yields optimal profit = n – 1
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 ue= 2 for all u' ≤ u s. t. there exists an optimal dual soln. with e capacities {u'e}(a) with ∑e u'eye ≥ OPT/O(log umax) vi = 1 for all i Þ 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) 1. For k = 1, 2, …, U, find optimal soln. (y(k), z(k)) to (Dk) that maximizes ∑e k ye. 2. Choose c ≤ U that maximizes ∑e c ye(c). 3. Return {ye(c)} as prices, optimal soln. to (Pc) as allocation. Can be made polytime by considering k = powers of (1+e).
Analysis OPT(k) : = vi OPT(U) OPT(1) 1 max ∑i vixi (Pk) = min ∑e k ye + ∑i zi (Dk) s. t. ∑i: eÎSi xi ≤k "e s. t. ∑eÎSi ye + zi ≥ "i Lemma: OPT(. ) is 0 ≤ xi ≤ 1 "i ye, azconcave i ≥ 0 "e, i f’n. OPT(. ) is linear b/w k and k' iff $common soln. (y, z) that is optimal for both (Dk), (Dk') U Why? If c = lk+(1–l)k', opt. soln. to (Dc) is feasible for (Dk), (Dk')
. . OPT(k) Let bk = break pt. of OPT(. ) before k OPT(k)-OPT(b ) Lemma: ∑e k ye(k) ≥ k. . bk k k – bk k
. . OPT(k). . . bk k Let bk = break pt. of OPT(. ) before k OPT(k)-OPT(b ) k – bk Lemma: ∑e k ye(k) ≥ k. Proof: Let (y, z) be common optimal solution to (Dk), (Dbk). RHS = ∑e k ye ≤ ∑e k ye(k). k
. . OPT(k) ). k Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b OPT(U) Theorem: Return Profit Pk* ≥ – b. k 2 HU . . . bk k
. k) Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b . . OPT(k) k – bk OPT(U) Theorem: Return Profit P* ≥. 2 HU . . . Proof: We have P* ≥ ∑e k ye(k) "k. bk k Suppose first that bk = k-1 "k. P*(U. – b. U)/U ≥ OPT(U) – OPT(b. U). . P*(k– bk)/k ≥ OPT(k) – OPT(bk). . . P* ≥ OPT(1) [b 1 = 0]
. k) Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b . . OPT(k) k – bk OPT(U) Theorem: Return Profit P* ≥. 2 HU . . . Proof: We have P* ≥ ∑e k ye(k) "k. Suppose first that bk = k-1 "k. P*/U = P*(U. – b. U)/U ≥ OPT(U) – OPT(b. U) bk k P*/k = P* P *. H U = . . P*(k– bk)/k ≥ OPT(k) – OPT(bk). . . P* ≥ OPT(1) ≥ OPT(U) [b 1 = 0]
OPT(k) . . . k) Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b k – bk OPT(U) Theorem: Return Profit P* ≥. 2 HU Proof: We have P* ≥ ∑e k ye(k) "k. bk k bk+1 May assume that bk Î [k-1, k) "k. P*(U – b. U)/U ≥ OPT(U) – OPT(b. U). . . P*/k ≥ [OPT(bk+1) – OPT(k)]/[bk+1 – k] P*(k– bk)/k ≥ OPT(k) – OPT(bk). . . P* ≥ OPT(1) [b 1 = 0]
OPT(k) . . . k) Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b k – bk OPT(U) Theorem: Return profit P* ≥. 2 HU Proof: We have P* ≥ ∑e k ye(k) "k. bk k bk+1 May assume that bk Î [k-1, k) "k. P*(U – b. U)/U ≥ OPT(U) – OPT(b. U). . . * P (bk+1 – k)/k ≥ OPT(bk+1) – OPT(k) P*(k– bk)/k ≥ OPT(k) – OPT(bk). . . P* ≥ OPT(1) [b 1 = 0]
. . OPT(k). . k) Lemma: ∑e k ye(k) ≥ k. OPT(k)-OPT(b k – bk OPT(U) Theorem: Return profit P* ≥. 2 HU Proof: We have P* ≥ ∑e k ye(k) "k. bk k bk+1 May assume that bk Î [k-1, k) "k. P*/U ≥ P*(U – b. U)/U ≥ OPT(U) – OPT(b. U). . . * * P /k ≥ P (bk+1 – k)/k ≥ OPT(bk+1) – OPT(k) P*/k ≥ P*. (k– bk)/k ≥ OPT(k) – OPT(bk). . P* ≥ P*(b 2 – 1) ≥ OPT(b 2) – OPT(1) P* ≥ OPT(1) [b 1 = 0] 2 P*. 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 "i ye, 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, {yecomplementary }) is a feasible slackness: soln. with at Profit ≥ ∑e ueye/a Recall optimality, • if xi > 0 then ∑eÎSi ye + zi = vi Þ ∑eÎSi ye ≤ vi • if xi < 1 then zi = 0 Þ ∑eÎSi ye ≥ vi • if ye > 0 then ∑i: eÎSi xi = ue
Can use an LP-based a-approx. algorithm for SWMproblem to obtain W with desired properties – W ¬ {i: xi = 1} – decompose (remaining fractional soln. ) /a into 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) 1. For suitable vectors k = k 1, k 2, …, kr , (r: polynomial) find optimal soln. (y(k), z(k)) to (Dk) that maximizes ∑e keye. 2. Choose vector cÎ{k 1, k 2, …, kr} that maximizes ∑e ceye(c). 3. Return {ye(c)} as prices, round optimal soln. to (Pc) to obtain W.
Summary of Results • Give the first approx. algorithms for single-minded envyfree 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)-
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
Thank You.
- Slides: 40