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 Software, movies, information access Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics Auction mechanisms for selling digital goods
Auctions/pricing Ad-auctions Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics
Auctions/pricing 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? Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics
Auctions/pricing 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. Designing auction/pricing mechanisms esp for complex markets: challenging problems at the intersection of CS and Economics
Auction/Pricing Problems Version 1: Seller knows the true values. Version 2: values given by selfish agents. One Seller, Multiple Buyers with Complex Preferences. CS / optimization Economics Algorithm Design Problem (AD) Incentive Compatible Auction (IC) Previous Work on IC : specific mechanisms for restricted settings. Seller’s Goal: maximize profit.
Auction/Pricing Problems Version 1: Seller knows the true values. Version 2: values given by selfish agents. One Seller, Multiple Buyers with Complex Preferences. CS / optimization Economics Algorithm Design Problem (AD) Incentive Compatible Auction (IC) Previous Work on IC : specific mechanisms for restricted settings. Seller’s Goal: maximize profit. Our Work: Generic Reduction using ML
How is this related to Machine Learning? You’ve developed a cool new software tool & want to sell it. - n potential buyers. Buyer i has valuation v i. - Can potentially sell to all of them, but buyer i will only purchase if priced below v i. - Unfortunately, you don’t know the v i. Simple version: basic digital good auction problem.
How is this related to Machine Learning? You’ve developed a cool new software tool & want to sell it. Simple version: basic digital good auction problem. Classic econ model: buyers “types” (valuations) chosen iid from known distribution D. In this case, just set sales price p D to maximize expected profit. But what if don’t want to assume this? - n potential buyers. Buyer i has valuation v i. - Can potentially sell to all of them, but buyer i will only purchase if priced below v i. - Unfortunately, you don’t know the v i.
How is this related to Machine Learning? You’ve developed a cool new software tool & want to sell it. Simple version: basic digital good auction problem. Could ask people for their valuations and use this to set a price as before, but people will low-ball (not incentive- compatible…) - n potential buyers. Buyer i has valuation v i. - Can potentially sell to all of them, but buyer i will only purchase if priced below v i. - Unfortunately, you don’t know the v i.
How is this related to Machine Learning? You’ve developed a cool new software tool & want to sell it. Simple version: basic digital good auction problem. Ask buyers to submit bids b i. Randomly partition bidders into two sets S 1, S 2. Find best price over bids in S 1 … and use it as offer price on S 2 ! (& vice versa). Random sampling auction: S1S1S2S2S1S1S2S2 - n potential buyers. Buyer i has valuation v i. - Can potentially sell to all of them, but buyer i will only purchase if priced below v i. - Unfortunately, you don’t know the v i.
How is this related to Machine Learning? You’re Sperizon-mobile. Want to price various services. -Basic service -Extra lines -Data package -TV features, … More interesting version: combinatorial auctions 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)
How is this related to Machine Learning? You’re Sperizon-mobile. Want to price various services. -Basic service -Extra lines -Data package -TV features, … More interesting version: combinatorial auctions Random sampling auction: Split randomly into S 1, S 2. Apply optimization alg A on S 1, perhaps with penalty term. Use A(S 1 ) on S 2 and vice-versa. S1S1S2S2S1S1S2S2
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? S1S1S2S2S1S1S2S2 Random sampling auction: Split randomly into S 1, S 2. Apply optimization alg A on S 1, perhaps with penalty term. Use A(S 1 ) on S 2 and vice-versa.
Generic Setting S set of n bidders. Space of legal offers/pricing functions G. g is “take it or leave it” offer, so any fixed g is IC. g 2 G maps the pub i to pricing over the outcome space. Bidder i:priv i, pub i, bid i 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.
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? S1S1S2S2S1S1S2S2 Random sampling auction: Split randomly into S 1, S 2. Apply optimization alg A on S 1, perhaps with penalty term. Use A(S 1 ) on S 2 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 S 1,S 2 +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 S 1,S Multiplicative L 1 cover size. E.g., digital-good auction. Algorithm uses S 1 to choose price to offer for S 2 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.
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 S 1,S Multiplicative L 1 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 attributes valuations
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 S 1,S Multiplicative L 1 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’|.
Attribute Auctions, Linear Pricing Functions Assume X=R d. N= (n+1)(1/ ) ln h. |G’| · N d+1 attributes 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 x
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 S 1,S Multiplicative L 1 cover size. For combinatorial auctions with m items, G = class of item-pricings, to get ¸ (1- )OPT, sufficient to have: OPT = Õ(hm 2 / 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.
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 S 1 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. $1 $h$h
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.