2.27k likes | 2.39k Views
Online Algorithms for Market Clearing. Martin Zinkevich Joint Work with Avrim Blum and Tuomas Sandholm (SODA 2002). Introduction. E-Bay: Single Auction. Buy Bids: people wanting to buy Sell Bids: people wanting to sell. E-Bay: Single Auction. Buy Bids: people wanting to buy
E N D
Online Algorithms for Market Clearing Martin Zinkevich Joint Work with Avrim Blum and Tuomas Sandholm (SODA 2002)
E-Bay: Single Auction Buy Bids: people wanting to buy Sell Bids: people wanting to sell
E-Bay: Single Auction Buy Bids: people wanting to buy Sell Bids: people wanting to sell
E-Bay: Single Auction Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Improvement #1: Double Auction Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Graphical Version Price Profit Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Jane Toy’s R Us Mark Temporal Bidding Problem Introduction Time Expiration Time Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
How to Make Money • Buy the PS2 from one person for some money, and sell it to someone else for more than you bought it. • Keep no inventory, have sellers mail PS2 directly to buyers.
Types of Algorithms • One can imagine two types of algorithms: • Offline: An algorithm which knows the whole sequence before making decisions. • Online: An algorithm which finds the type, price, and expiration time of a bid as it is introduced, and must act on a bid before it expires.
Formalizing the Goal • Find a matching of concurrent buy and sell bids that maximizes profit
The Maximal Matching Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
The Offline Problem Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Convert to a Graph Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Convert to a Graph Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Convert to a Weighted Graph 5 Price 1 5 5 2 Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Convert to a Weighted Graph 5 1 5 5 2
Find a Matching of Maximum Weight 5 1 5 5 A matching for a graph is a set of edges which do not share any vertices 2
Find a Matching of Maximum Weight 5 1 5 5 A matching for a graph is a set of edges which do not share any vertices 2
Find a Matching of Maximum Weight 5 1 5 5 2 Algorithms exist to solve this in polynomial time
Find a Matching of Maximum Weight Price Matching of maximal weight maximizes profit! Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
What Online Sees… Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Two Online Difficulties Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Getting the Most Matches Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Getting the Most Per Match Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Two Small Problems • Maximizing Liquidity: maximizing the number of matches • The Ice Cream Problem: maximizing profit of one trade
Outline • Introduction • Small Problem #1:Maximizing Liquidity • Small Problem #2:The Ice Cream Problem • Putting it Together • Conclusion • New Results
Simplified Matching • Let’s try to maximize the number of trades with positive profit on each trade.
A Maximal Numeric Matching Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Also Maximal Numerically Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Offline: Convert to a Graph No weights needed Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell
Convert to a Graph No edge here Price Time Buy Bids: people wanting to buy Sell Bids: people wanting to sell