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