Multi-item Auctions / Matching Economics 383 - Auction Theory Instructor: Songzi Du Simon Fraser University October 2, 2015 ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 1 / 20 Terminologies Bipartite Graph In mathematics, a graph is a set of objects (nodes) where some pairs of them are connected by links (edges) c e b d a g ECON 383 (SFU) Multi-item Auctions / Matching f October 2, 2015 2 / 20 Terminologies Bipartite Graph In mathematics, a graph is a set of objects (nodes) where some pairs of them are connected by links (edges) c e b d a g A bipartite graph is a graph whose nodes can be divided into two disjoint subsets, O and B, such that every edge connects a node in O to one in B. ECON 383 (SFU) Multi-item Auctions / Matching f a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 2 / 20 Terminologies Perfect Matching A perfect matching occurs when there are equal number of nodes in the sets O and B each node in O is connected by an edge to a node in B no two nodes in O are connected to the same node in B ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 3 / 20 Terminologies Perfect Matching A perfect matching occurs when there are equal number of nodes in the sets O and B each node in O is connected by an edge to a node in B no two nodes in O are connected to the same node in B A perfect matching can also be viewed as a choice of edges in a bipartite graph so that each node is the endpoint of exactly one of the chosen edges. ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 3 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} A set S ⊆ B is constricted if its size is strictly greater than the size of its neighbor set; that is, if |S| > |N (S)| ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} A set S ⊆ B is constricted if its size is strictly greater than the size of its neighbor set; that is, if |S| > |N (S)| For example, take S = {1, 2, 3}, so that N (S) = ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} A set S ⊆ B is constricted if its size is strictly greater than the size of its neighbor set; that is, if |S| > |N (S)| For example, take S = {1, 2, 3}, so that N (S) = {a, b} ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} A set S ⊆ B is constricted if its size is strictly greater than the size of its neighbor set; that is, if |S| > |N (S)| For example, take S = {1, 2, 3}, so that N (S) = {a, b} Clearly, |S| = 3 > 2 = |N (S)| ECON 383 (SFU) Multi-item Auctions / Matching a 5 b 4 c 3 d 2 e 1 O B October 2, 2015 4 / 20 Terminologies Constricted Set Given a subset of nodes S ⊆ B in a bipartite graph, define its neighbor set N (S) to be the set of nodes in O that are connected by edges to nodes in S. If S = {5, 3}, then N (S) = {a, b, c, d} If S = {1, 4}, then N (S) = {b, e} A set S ⊆ B is constricted if its size is strictly greater than the size of its neighbor set; that is, if |S| > |N (S)| For example, take S = {1, 2, 3}, so that N (S) = {a, b} Clearly, |S| = 3 > 2 = |N (S)| a 5 b 4 c 3 d 2 e 1 O B If we interpret B and O as sets of buyers and sellers respectively, then constriction represents over-demand ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 4 / 20 Matching Theorem Matching Theorem A bipartite graph (with equal number of nodes in O and B) has a perfect matching if and only if it has no constricted set. Interpretation: If there is over-demand for a subset of sellers, then it is not possible to match buyers and sellers in a 1-to-1 fashion. The failure to match buyers and sellers in a 1-to-1 fashion can only be caused by over-demand. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 5 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi Let buyer j ∈ B value object i ∈ O at vi,j ; each buyer wants only one object ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi Let buyer j ∈ B value object i ∈ O at vi,j ; each buyer wants only one object For each j, let Dj (p) be the set of solutions to maxi vi,j − pi s.t. vi,j − pi ≥ 0 Dj (p) could contain multiple solutions; Dj (p) could also contain no solution. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi Let buyer j ∈ B value object i ∈ O at vi,j ; each buyer wants only one object For each j, let Dj (p) be the set of solutions to maxi vi,j − pi s.t. vi,j − pi ≥ 0 Dj (p) could contain multiple solutions; Dj (p) could also contain no solution. Connect each j ∈ B to his demands, that is, objects in Dj (p). If Dj (p) is an empty set, then no edge is drawn. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi Let buyer j ∈ B value object i ∈ O at vi,j ; each buyer wants only one object For each j, let Dj (p) be the set of solutions to maxi vi,j − pi s.t. vi,j − pi ≥ 0 Dj (p) could contain multiple solutions; Dj (p) could also contain no solution. Connect each j ∈ B to his demands, that is, objects in Dj (p). If Dj (p) is an empty set, then no edge is drawn. The resulting graph is the preferred seller/object graph ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Market-Clearing Prices Preferred Seller Graph A set of buyers B and a set of objects (sellers) O in a bipartite graph Let the price of each object i ∈ O be pi Let buyer j ∈ B value object i ∈ O at vi,j ; each buyer wants only one object For each j, let Dj (p) be the set of solutions to maxi vi,j − pi s.t. vi,j − pi ≥ 0 Dj (p) could contain multiple solutions; Dj (p) could also contain no solution. Connect each j ∈ B to his demands, that is, objects in Dj (p). If Dj (p) is an empty set, then no edge is drawn. The resulting graph is the preferred seller/object graph Market-Clearing Prices A set of prices {pi }i∈O is market-clearing if the resulting preferred seller graph has a perfect matching. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 6 / 20 Example of Market-clearing Prices Four houses in different neighborhoods. Four buyers: Alice, Bob, Clair, Doug, with values: Alice Bob Clair Doug Yaletown 4 5 4 2 Downtown Eastside 1 0 0 0 Kitsilano 5 5 8 5 Metrotown 3 2 5 1 Do prices pY = 2, pE = 1, pK = 2, pM = 1 clear the market? ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 7 / 20 Market-clearing prices maximize social welfare If m is a matching (j is matched to m(j), for every buyer j), the social welfare generated by m is: ∑ vm(j),j j∈B Social planner wants to solve: max ∑ vm(j),j m j∈B among all feasible matching m. Theorem If {pi } are market-clearing prices, then any perfect matching associated with these prices maximize the social welfare. Market-clearing prices automatically maximize the social welfare, work as well as a social planner. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 8 / 20 Ascending-price Auction to find market-clearing prices Input: vi,j , for every buyer j ∈ B and object i ∈ O. 1. Set initially pi = 0 for every i ∈ O. 2. Construct the preferred-object graph, and check if there is a perfect matching. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 9 / 20 Ascending-price Auction to find market-clearing prices Input: vi,j , for every buyer j ∈ B and object i ∈ O. 1. Set initially pi = 0 for every i ∈ O. 2. Construct the preferred-object graph, and check if there is a perfect matching. 3. If yes, done. 4. If not, find a constricted set of buyers, S ⊂ B, and the over-demanded objects N (S). 5. For each object in N (S), increase its price by one. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 9 / 20 Ascending-price Auction to find market-clearing prices Input: vi,j , for every buyer j ∈ B and object i ∈ O. 1. Set initially pi = 0 for every i ∈ O. 2. Construct the preferred-object graph, and check if there is a perfect matching. 3. If yes, done. 4. If not, find a constricted set of buyers, S ⊂ B, and the over-demanded objects N (S). 5. For each object in N (S), increase its price by one. 6. If the lowest price among all objects is no longer zero, decrease every price by one. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 9 / 20 Ascending-price Auction to find market-clearing prices Input: vi,j , for every buyer j ∈ B and object i ∈ O. 1. Set initially pi = 0 for every i ∈ O. 2. Construct the preferred-object graph, and check if there is a perfect matching. 3. If yes, done. 4. If not, find a constricted set of buyers, S ⊂ B, and the over-demanded objects N (S). 5. For each object in N (S), increase its price by one. 6. If the lowest price among all objects is no longer zero, decrease every price by one. 7. Go to Step 2. Output: pi that are market-clearing prices, and an associated perfect matching. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 9 / 20 Example of Ascending Price Auction Six students: Alice, Bob, Clair, Doug, Elle, Frank. Four letter grades: A, B, C, D. The professor has to give 1 A, 2 B’s, 2 C’s, and 1 D (department guideline). The students’ willingness-to-pay: Alice Bob Clair Doug Elle Frank ECON 383 (SFU) A 10 12 8 7 9 10 B 9 11 7 5 2 8 C 8 10 3 2 1 3 Multi-item Auctions / Matching D 0 0 0 0 0 0 October 2, 2015 10 / 20 Example of Ascending Price Auction Grade Student 0 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 0 0 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 0 C1 C2 e 9, 2, 2, 1, 1, 0 0 f 10, 8, 8, 3, 3, 0 0 D Round 1: constricted set S = {a, b, c, d, e, f }, N (S) = {A}. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 11 / 20 Example of Ascending Price Auction Grade Student 1 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 0 0 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 0 C1 C2 e 9, 2, 2, 1, 1, 0 0 f 10, 8, 8, 3, 3, 0 0 D Round 2: constricted set S = {d, e, f }, N (S) = {A}. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 12 / 20 Example of Ascending Price Auction Grade Student 2 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 0 0 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 0 C1 C2 e 9, 2, 2, 1, 1, 0 0 f 10, 8, 8, 3, 3, 0 0 D Round 3: constricted set S = {a, b, c}, N (S) = {B1 , B2 }. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 13 / 20 Example of Ascending Price Auction Grade Student 2 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 1 1 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 0 C1 C2 e 9, 2, 2, 1, 1, 0 0 f 10, 8, 8, 3, 3, 0 0 D Round 4: constricted set S = {d, e, f }, N (S) = {A}. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 14 / 20 Example of Ascending Price Auction Grade Student 3 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 1 1 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 0 C1 C2 e 9, 2, 2, 1, 1, 0 0 f 10, 8, 8, 3, 3, 0 0 D Round 5: constricted set S = {a, b, c, d, e, f }, N (S) = {A, B1 , B2 , C1 , C2 }. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 15 / 20 Example of Ascending Price Auction Grade Student 4 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 2 2 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 1 C1 C2 e 9, 2, 2, 1, 1, 0 1 f 10, 8, 8, 3, 3, 0 0 D Round 6: constricted set S = {a, b, c, d, e, f }, N (S) = {A, B1 , B2 , C1 , C2 }. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 16 / 20 Example of Ascending Price Auction Grade Student 5 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 3 3 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 2 C1 C2 e 9, 2, 2, 1, 1, 0 2 f 10, 8, 8, 3, 3, 0 0 D Round 7: constricted set S = {a, b, c, d, e, f }, N (S) = {A, B1 , B2 , C1 , C2 }. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 17 / 20 Example of Ascending Price Auction Grade Student 6 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 4 4 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 3 C1 C2 e 9, 2, 2, 1, 1, 0 3 f 10, 8, 8, 3, 3, 0 0 D Round 8: constricted set S = {a, b, c, d, e, f }, N (S) = {A, B1 , B2 , C1 , C2 }. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 18 / 20 Example of Ascending Price Auction Grade Student 7 A a 10, 9, 9, 8, 8, 0 B1 b 12, 11, 11, 10, 10, 0 5 5 B2 c 8, 7, 7, 3, 3, 0 d 7, 5, 5, 2, 2, 0 4 C1 C2 e 9, 2, 2, 1, 1, 0 4 f 10, 8, 8, 3, 3, 0 0 D Round 9: a perfect matching exists. Student’s welfare: 8 + 10 + 7 + 0 + 9 + 8 = 42; Professor’s revenue: ECON 383 (SFU) 7 + 5 + 5 + 4 + 4 + 0 = 25. Multi-item Auctions / Matching October 2, 2015 19 / 20 Relating to Second Price Auction A single object, four buyers: v1 = 5, v2 = 3, v3 = 2 and v4 = 0. Two identical objects, four buyers each wanting only one unit: v1 = 5, v2 = 3, v3 = 2 and v4 = 0. ECON 383 (SFU) Multi-item Auctions / Matching October 2, 2015 20 / 20