280 likes | 468 Views
Machine Learning for Mechanism Design and Pricing Problems. Avrim Blum. Carnegie Mellon University. Joint work with Maria-Florina Balcan, Jason Hartline, and Yishay Mansour. [Informs 2009]. Auctions/pricing.
E N D
Machine Learning for Mechanism Design and Pricing Problems Avrim Blum Carnegie Mellon University Joint work with Maria-Florina Balcan, Jason Hartline, and Yishay Mansour [Informs 2009]
Auctions/pricing Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics Auction mechanisms for selling digital goods Software, movies, information access
Auctions/pricing Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics Ad-auctions
Auctions/pricing Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics Combinatorial Auctions Selling many different kinds of items. Buyers with complex preferences over bundles: “I only want the hotel room if I get the flight too…” Some items or services that overlap, others only good if have something else too. How should you set prices to make the most profit?
Auctions/pricing Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics • Even if all customers’ preference information, how much they would be willing to pay, etc. is known up-front, setting prices to maximize revenue can be a challenging algorithmic problem. • But in addition, incentive constraints: customers won’t give you the (correct) information if (possibly) not in their best interest.
Auction/Pricing Problems One Seller, Multiple Buyers with Complex Preferences. Seller’s Goal: maximize profit. CS / optimization Economics Version 2: values given by selfish agents. Version 1: Seller knows the true values. Algorithm Design Problem (AD) Incentive Compatible Auction (IC) Previous Work on IC : specific mechanisms for restricted settings.
Auction/Pricing Problems One Seller, Multiple Buyers with Complex Preferences. Seller’s Goal: maximize profit. CS / optimization Economics Version 2: values given by selfish agents. Version 1: Seller knows the true values. Algorithm Design Problem (AD) Incentive Compatible Auction (IC) Our Work: Generic Reduction using ML Previous Work on IC : specific mechanisms for restricted settings.
How is this related to Machine Learning? Simple version: basic digital good auction problem. You’ve developed a cool new software tool & want to sell it. • - n potential buyers. Buyer i has valuation vi. • - Can potentially sell to all of them, but buyer i will only purchase if priced below vi. • - Unfortunately, you don’t know the vi.
How is this related to Machine Learning? Simple version: basic digital good auction problem. You’ve developed a cool new software tool & want to sell it. • - n potential buyers. Buyer i has valuation vi. • - Can potentially sell to all of them, but buyer i will only purchase if priced below vi. • - Unfortunately, you don’t know the vi. • Classic econ model: buyers “types” (valuations) chosen iid from known distribution D. In this case, just set sales price pD to maximize expected profit. • But what if don’t want to assume this?
How is this related to Machine Learning? Simple version: basic digital good auction problem. You’ve developed a cool new software tool & want to sell it. • - n potential buyers. Buyer i has valuation vi. • - Can potentially sell to all of them, but buyer i will only purchase if priced below vi. • - Unfortunately, you don’t know the vi. • Could ask people for their valuations and use this to set a price as before, but people will low-ball (not incentive-compatible…)
S1 S2 How is this related to Machine Learning? Simple version: basic digital good auction problem. You’ve developed a cool new software tool & want to sell it. • - n potential buyers. Buyer i has valuation vi. • - Can potentially sell to all of them, but buyer i will only purchase if priced below vi. • - Unfortunately, you don’t know the vi. Random sampling auction: • Ask buyers to submit bids bi. • Randomly partition bidders into two sets S1, S2. • Find best price over bids in S1… and use it as offer price on S2! (& vice versa).
How is this related to Machine Learning? More interesting version: combinatorial auctions You’re Sperizon-mobile. Want to price various services. • Basic service • Extra lines • Data package • TV features, … • People have potentially nonlinear valuations over subsets. • Might also have known info about customers (current usage, demographics,…). • Want to perform nearly as well as best (simple) pricing function over known info. (Combinatorial Attribute Auction)
S1 S2 How is this related to Machine Learning? More interesting version: combinatorial auctions You’re Sperizon-mobile. Want to price various services. • Basic service • Extra lines • Data package • TV features, … Random sampling auction: • Split randomly into S1, S2. • Apply optimization alg A on S1, perhaps with penalty term. • Use A(S1) on S2 and vice-versa.
S1 S2 Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. Interesting issues: • What quantities to use for , ? • What kind of regularization makes sense? Random sampling auction: • Split randomly into S1, S2. • Apply optimization alg A on S1, perhaps with penalty term. • Use A(S1) on S2 and vice-versa.
Generic Setting • Bidder i: privi , pubi , bidi • S set of n bidders. • Space of legal offers/pricing functions G. • g 2 G maps the pubi to pricing over the outcome space. • g is “take it or leave it” offer, so any fixedg is IC. • Goal:Incentive Compatible mechanism to do nearly as well as the best g 2 G. • Assume max profit h per bidder. Unlimited supply Profit of g: sum over bidders.
S1 S2 Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. Interesting issues: • What quantities to use for , ? • What kind of regularization makes sense? Random sampling auction: • Split randomly into S1, S2. • Apply optimization alg A on S1, perhaps with penalty term. • Use A(S1) on S2 and vice-versa.
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. What should be large? • # bidders? But bidders of valuation 0 don’t help very much. • Instead: OPT profit. Even if assume all valuations ¸ 1, bounds will be loose.
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. What should be large? • # bidders? But bidders of valuation 0 don’t help very much. • Instead: OPT profit. As a function of what? • # functions in G. Even if assume all valuations ¸ 1, bounds will be loose.
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. What should be large? • # bidders? But bidders of valuation 0 don’t help very much. • Instead: (OPT profit)/h. As a function of what? • # functions in G.
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. What should be large? • # bidders? But bidders of valuation 0 don’t help very much. • Instead: (OPT profit)/h. As a function of what? • # functions in G. • # functions in G the alg could possibly output over splits S1,S2 +1.
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. As a function of what? • # functions in G. • # functions in G the alg could possibly output over splits S1,S2 +1. • Multiplicative L1 cover size. • E.g., digital-good auction. Algorithm uses S1 to choose price to offer for S2 and vice-versa. • Can discretize to powers of (1+). Get |G| = (log h)/. • Or use fact that alg will only output a bid value. |G| · n+1.
valuations attributes Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. • # functions in G. • # functions in G the alg could possibly output over splits S1,S2 +1. • Multiplicative L1 cover size. What if hard to directly bound # possible outputs • Use covering arguments: • find G’ that covers G , • show that all functions in G’ behave well
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. • # functions in G. • # functions in G the alg could possibly output over splits S1,S2 +1. • Multiplicative L1 cover size. G’-covers G wrt to S if for all g exists g’ 2 G’ s.t. i |g(i)-g’(i)| · g(S).[g(i) ´ profit made from bidder i] Theorem (roughly): If G’ is -cover of G, then the previous bounds hold with |G| replaced by |G’|.
x valuations x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x x attributes Attribute Auctions, Linear Pricing Functions Assume X=Rd. N= (n+1)(1/) ln h. |G’| · Nd+1
Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. • # functions in G. • # functions in G the alg could possibly output over splits S1,S2 +1. • Multiplicative L1 cover size. For combinatorial auctions with m items, G = class of item-pricings, to get ¸ (1-)OPT, sufficient to have: • OPT = Õ(hm2/2) for general valuation functions. • OPT = Õ(hm/2) for unit-demand valuations. First results for general case, factor m savings over GH01 for unit-demand valuations.
$1 $1 $1 $1 $1 $h $1 $1 $1 Goal If is large as a function of , then the random sampling auction (perhaps regularized) performs nearly as well as best pricing function in class G. Regularization/SRM: • Can do SRM as usual, penalizing higher-complexity function classes. • But even individual functions can have different complexity levels! • E.g., digital-good auction. Say S1 has 1 bid of value h and h-1 bids of value 1. • So, {1,h} are both optimal prices. But much better stats for 1. • Allows to replace “h” with “price used by OPT” in previous bounds.
Summary • Explicit connection between machine learning and mechanism design. Use ideas of MLT to analyze when random sampling auction will do well. • This application brings out interesting twists on usual ML issues. What has to be large as a function of what? SRM. • Challenges: • Loss function discontinuous and asymmetric. • Range of valuations large.
Challenges/Future Directions • Apply similar techniques to limited supply. • Online Setting. • How big a “focus group” do you need for other kinds of pricing/allocation/decision-making problems.