Towards a Universal Test Suite for Combinatorial Algorithms

Kevin Leyton-Brown Mark Pearson Yoav Shoham Dept. of Computer Science Dept. of Computer Science Dept. of Computer Science Stanford University Stanford University Stanford University Stanford, CA 94305 Stanford, CA 94305 Stanford, CA 94305 [email protected] [email protected] [email protected]

ABSTRACT equipment, in which a bidder values a particular TV at x General combinatorial —auctions in which bidders and a particular VCR at y but values the pair at z>x+ y. place unrestricted bids for bundles of goods—are the sub- An agent with substitutable valuations for two copies of the ject of increasing study. Much of this work has focused on same book might value either single copy at x, but value algorithms for finding an optimal or approximately optimal the bundle at z<2x. In the special case where z = x (the set of winning bids. Comparatively little attention has been agent values a second book at 0, having already bought a { } paid to methodical evaluation and comparison of these al- first) the agent may submit the set of bids bid1 XOR bid2 . gorithms. In particular, there has not been a systematic By default, we assume that any satisfiable sets of bids that discussion of appropriate data sets that can serve as uni- are not explicitly XOR’ed is a candidate for allocation. We versally accepted and well motivated benchmarks. In this call an auction in which all goods are distinguishable from paper we present a suite of distribution families for generat- each other a single-unit CA. In contrast, in a multi-unit CA ing realistic, economically motivated combinatorial bids in some of the goods are indistinguishable (e.g., many iden- five broad real-world domains. We hope that this work will tical TVs and VCRs) and bidders request some number of yield many comments, criticisms and extensions, bringing goods from each indistinguishable set. This paper is primar- the community closer to a universal combinatorial auction ily concerned with single-unit CA’s, since most research to test suite. date has been focused on this problem. However, when ap- propriate we will discuss ways that our distributions could be generalized to apply to multi-unit CA’s. 1. INTRODUCTION 1.1 Combinatorial Auctions 1.2 The Computational Combinatorial Auc- tion Problem Auctions are a popular way to allocate goods when the amount that bidders are willing to pay is either unknown or In a combinatorial auction, a seller is faced with a set unpredictably changeable over time. The rise of electronic of price offers for various bundles of goods, and his aim is commerce has facilitated the use of increasingly complex to allocate the goods in a way that maximizes his revenue. auction mechanisms, making it possible for auctions to be (For an overview of this problem, see [8].) This optimization applied to domains for which the more familiar mechanisms problem is intractable in the general case, even when each are inadequate. One such example is provided by combina- good has only a single unit. Because of the intractability of torial auctions (CA’s), multi-object auctions in which bids general CA’s, much research has focused on subcases of the name bundles of goods. These auctions are attractive be- CA problem that are tractable; see [22] and more recently cause they allow bidders to express complementarity and [25]. However, these subcases are very restrictive and there- substitutability relationships in their valuations for sets of fore are not applicable to many CA domains. Other research goods. Because CA’s allow bids for arbitrary bundles of attempts to define mechanisms within which general CA’s goods, an agent may offer a different price for some bundle will be tractable (achieved by various trade-offs including of goods than he offers for the sum of his bids for its disjoint bid withdrawal penalties, activity rules and possible ineffi- subsets; in the extreme case he may bid for a bundle with ciency). Milgrom [15] defines the Simultaneous Ascending the guarantee that he will not receive any of its subsets. An Auction mechanism which has been very influential, partic- example of complementarity is an auction of used electronic ularly in the recent FCC spectrum auctions. However, this approach has drawbacks, discussed for example in [6]. In the general case there is no substitute for a completely un- restricted CA. Consequently, many researchers have recently Permission to make digital or hard copies of all or part of this work for begun to propose algorithms for determining the winners of personal or classroom use is granted without fee provided that copies are a general CA, with encouraging results. This wave of re- not made or distributed for profit or commercial advantage and that copies search has given rise to a new problem, however. In order bear this notice and the full citation on the first page. To copy otherwise, to to test (and thus to improve) such algorithms, it has been republish, to post on servers or to redistribute to lists, requires prior specific necessary to use some sort of test suite. Since general CA’s permission and/or a fee. EC’00, October 17-20, 2000, Minneapolis, Minnesota. have never been widely held, there is no data recording the Copyright 2000 ACM 1-58113-272-7/00/0010 ..$5.00 behavior of real bidders upon which such a test suite may be built. In the absence of such natural data, we are 2.3.1 Which goods left only with the option of generating artificial data that First, each of the distributions for generating test data is representative of the sort of scenarios one is likely to en- discussed above has the property that all bundles of the counter. The goal of this paper is to facilitate the creation same size are equally likely to be requested. This assumption of such a test suite. is clearly violated in almost any real-world auction: most of the time, certain goods will be more likely to appear together 2. PAST WORK ON TESTING CA than others. (Continuing our electronics example, TVs and VCRs will be requested together more often than TVs and ALGORITHMS printers.) 2.1 Experiments with Human Subjects 2.3.2 Number of goods One approach to experimental work on combinatorial auc- Likewise, each of the distributions for generating test data tions uses human subjects. These experiments assign valu- determines the number of goods in a bundle completely in- ation functions to subjects, then have them participate in dependently from determining which goods appear in the auctions using various mechanisms [3, 12, 7]. Such tests can bundle. While this assumption appears more reasonable it be useful for understanding how real people bid under differ- will still be violated in many domains, where the expected ent auction mechanisms; however, they are less suitable for length of a bundle will be related to which goods it contains. evaluating the mechanisms’ computational characteristics. (For example, people buying computers will tend to make In particular, this sort of test is only as good as the sub- long combinatorial bids, requesting monitors, printers, etc., jects’ valuation functions, which in the above papers were while people buying refrigerators will tend to make short hand-crafted. As a result, this technique does not easily bids.) permit arbitrary scaling of the problem size, a feature that is important for characterizing an algorithm’s performance. 2.3.3 Price In addition, this method relies on relatively naive subjects Next, there are problems with the pricing1 schemes used to behave rationally given their valuation functions, which by all four techniques. Pricing is especially crucial: if prices may be unreasonable when subjects are faced with complex are not chosen carefully then an otherwise hard distribution and unfamiliar mechanisms. can become computationally easy. In Sandholm [24] prices are drawn randomly from either 2.2 Particular Problems [0, 1] or from [0,g], where g is the number of goods requested. A parallel line of research has examined particular prob- The first method is clearly unreasonable (and computation- lems to which CA’s seem well suited. For example, re- ally trivial) since price is unrelated to the number of goods searchers have considered auctions for the right to use rail- in a bid—note that a bid for many goods and for a small road tracks [5], real estate [19], pollution rights [13], airport subset of the same bid will have exactly the same price on time slot allocation [21] and distributed scheduling of ma- expectation. The second is better, but has the disadvan- chine time [26]. Most of these papers do not suggest holding tage that average and range are parameterized by the same an unrestricted general CA, presumably because of the com- variable. putational obstacles. Instead, they tend to discuss alterna- In Boutilier et al.[4] prices of bids are distributed normally tive mechanisms that are tailored to the particular problem. with mean 16 and standard deviation 3, giving rise to the None of them proposes a method of generating test data, same problem as the [0, 1] case above. nor does any of them describe how the problem’s difficulty In Fujishima et al.[10] prices are drawn from [g(1−d),g(1+ scales with the number of bids and goods. However, they d)], d =0.5. While this scheme avoids the problems de- still remain useful to researchers interested in general CA’s scribed above, prices are simply additive in g and are unre- because they give specific descriptions of problem domains lated to which goods are requested in a bundle, both unre- to which CA’s may be applied. alistic assumptions in some domains. More fundamentally, Andersson et al.[1] note a critical 2.3 Artificial Distributions pricing problem that arises in several of the schemes dis- Recently, a number of researchers have proposed algo- cussed above. As the number of bids to be generated be- rithms for determining the winners of general CA’s. In comes large, a given short bid will be drawn much more the absence of test suites, some suggested novel bid gen- frequently than a given long bid. Since the highest-priced eration techniques, parameterized by number of bids and bid for a bundle dominates all other bids for the same bun- goods [24, 10, 4, 8]. (Other researchers have used one or dle, short bids end up being much more competitive. In- more of these distributions, e.g., [17], while still others have deed, it is pointed out that for extremely large numbers refrained from testing their algorithms altogether, e.g., [16, of bids a good approximation to the optimal solution is 14].) Parameterization represents a step forward, making it simply to take the best singleton bid for each good. One possible to describe performance with respect to the prob- solution to this problem is to guarantee that a bid will lem size. However, there are several ways in which each of be placed for each bundle at most once (for example, this these bid generation techniques falls short of realism, con- approach is taken by Sandholm[24]). However, this solu- cerning the selection of which goods and how many goods to tion has the drawback that it is unrealistic: different real request in a bundle, what price to offer for the bundle, and 1Most of the existing literature on artificial distributions which bids to combine in an XOR’ed set. More fundamen- in combinatorial auctions refers to the monetary amount tally, however, all of these approaches suffer from failing to associated with a bundle as a “price”. In Section 3 we will model bidders explicitly, and from attempting to represent advocate the use of different terminology, but in this section an economic situation with an non-economic model. we use the existing term for clarity. bidders are likely to place bids on some of the same bun- described in section 2.1 above. At the same time, all of dles. our distributions are parameterized by number of goods and Another solution to this problem is to make bundle prices bids, facilitating the study of algorithm performance. This superadditive in the number of goods they request—an as- suite represents a move beyond current work on modeling sumption that may also be reasonable in many CA domains. bidding in combinatorial auctions because we provide an A similar approach is taken by deVries and Vohra [8], who economic motivation for both the contents and the valuation make the price for a bid a quadratic function of the prices of a bundle, deriving them from basic bidder preferences. In of bids for subsets. For some domains this pricing scheme particular, in each of our distributions: may result in too large an increase in price as a function of bundle length. The distributions presented in this pa- • Certain goods are more likely to appear together than per will include a pricing scheme that may be configured others. to be superadditive or subadditive in bundle length, where • The number of goods appearing in the bundle is often appropriate, parameterized to control how rapidly the price related to which goods appear in the bundle. offered increases or decreases as a function of bundle length. • Valuations are related to which goods appear in the 2.3.4 XOR bids bundle. Where appropriate, valuations can be config- Finally, while most of the bid-generation techniques dis- ured to be subadditive, additive or superadditive in cussed above permit bidders to submit sets of bids XOR’ed the number of goods requested. together, they have no way of generating meaningful sets of • such bids. As a consequence the computational impact of Sets of XOR’ed bids are constructed in meaningful XOR’ed bids has been very difficult to characterize. ways, on a per-bidder basis. We do not intend for this paper to stand as an isolated 3. GENERATING REALISTIC BIDS statement on bidding in combinatorial auctions, but rather While the lack of standardized, realistic test cases does as the beginning of a dialogue. We hope to receive many not make it impossible to evaluate or compare algorithms, suggestions and criticisms from members of the CA com- it does make it difficult to know what magnitude of real- munity, enabling us both to update the distributions pro- world problems each algorithm is capable of solving, or what posed here and to include distributions modeling new do- features of real-world problems each algorithm is capable of mains. In particular, our distributions include many param- exploiting. This second ambiguity is particularly troubling: eters, for which we suggest default values. Although these it is likely that algorithms would be designed differently if values have evolved somewhat during our development of they took the features of more realistic2 bidding into ac- the test suite, it has not yet been possible to understand count. the role each parameter plays in the difficulty or realism of the resulting distribution, and our choice may be seen 3.1 Prices, price offers and valuations as highly subjective. We hope and expect to receive criti- The term “price” has traditionally been used by researchers cisms about these parameter values; for this reason we in- constructing artificial distributions to describe the amount clude a CATS version number with the defaults to differ- offered for a bundle. However, this term really refers to the entiate them from future defaults. The suite also contains amount a bidder is made to pay for a bundle, which is of a legacy section including all bid generation techniques de- course mechanism-specific and is often not the same as the scribed above, so that new algorithms may easily be com- amount offered. Indeed, it is impossible to model bidders’ pared to previously-published results. More information on price offers at all without committing to a particular auction our test suite, including executable versions of our distri- mechanism. In the distributions described in this paper, we butions for Solaris, Linux and Windows may be found at will assume a sealed-bid incentive-compatible mechanism, http://robotics.stanford.edu/CATS . where the price offered for a bundle is equal to the bid- In section 4, below, we present distributions based on five der’s valuation. Hence, in the rest of this paper, we will use real-world situations. For most of our distributions, the the terms price offer and valuation interchangeably. Re- mechanism for generating bids requires first building a graph searchers wanting to model bidding behavior in other mech- representing adjacency relationships between goods. Later, anisms could transform the valuation generated by our dis- the mechanism uses the graph, generated in an economically- tributions according to bidders’ equilibrium strategies in the motivated way, to derive complementarity properties be- new mechanism. tween goods and substitutability properties for bids. Of the five real-world situations we model, the first three concern 3.2 The CATS suite complementarity based on adjacency in (physical or con- In this paper we present CATS (Combinatorial Auction ceptual) space, while the final two concern complementarity Test Suite), a suite of distributions for modeling realistic based on correlation in time. Our first example (4.1) mod- bidding behavior. This suite is grounded in previous re- els shipping, rail and bandwidth auctions. Goods are repre- search on specific applications of combinatorial auctions, as sented as edges in a nearly planar graph, with agents submit- ting an XOR’ed set of bids for paths connecting two nodes. 2 Previous work characterizes hard cases for weighted set Our second example (4.2) models an auction of real estate, packing—equivalent to the combinatorial auction problem. or more generally of any goods over which two-dimensional Real-world bidding is likely to exhibit various regularities, however, as discussed throughout this paper. A data set de- adjacency is the basis of complementarity. Again the rela- signed to include the same regularities may be more useful tionship between goods is represented by a graph, in this for predicting the performance of an algorithm in a real- case strictly planar. In (4.3) we relax the planarity assump- world auction. tion from the previous example in order to model arbitrary 1 "cities2" complementarities between discrete goods such as electron- "edges2" ics parts or collectables. Our fourth example (4.4) concerns 0.9 the matching of time-slots for a fixed number of different 0.8 goods; this case applies to airline take-off and landing rights 0.7 auctions. In (4.5) we discuss the generation of bids for a 0.6 distributed job-shop scheduling domain, and also its appli- 0.5 cation to power generation auctions. Finally, in (4.6), we 0.4 provide a legacy suite of bid generation techniques, includ- ing all those discussed in (2.3) above. 0.3 In the description of the distributions that follow, let 0.2 rand(a, b) represent a real number drawn uniformly from 0.1

0 [a, b]. Let rand int(a, b) represent a random integer drawn 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 uniformly from the same interval. With respect to a given graph, let e(x, y) represent the proposition that an edge ex- Figure 1: Sample Railroad Graph ists between nodes x and y. Denote the number of goods in a bundle B as |B|. The statement a good g is in a bundle ∈ B means that g B. All of the distributions presented here to the testing of new CA algorithms, we have chosen to are parameterized by the number of goods (num goods)and propose generating such graphs randomly. Our technique number of bids (num bids). for generating graphs has various parameters that may be adjusted as necessary; in our opinion it produces realistic 4. CATS IN DETAIL graphs with the recommended settings. Figure 1 shows a representative example of a graph generated using our tech- 4.1 Paths in Space nique. We begin with num cities nodes randomly placed on a There are many real-world problems involving bidding on plane. We add edges to this graph, G, starting by connecting paths in space. Generally, this class may be characterized as each node to a fixed number of its nearest neighbors. Next, the problem of purchasing a connection between two points. we iteratively consider random pairs of nodes and examine Examples include truck routes [23], natural gas pipeline net- the shortest path connecting them, if any. To compare, we works [20], network bandwidth allocation, and the right to 3 also compute various alternative paths that would require use railway tracks [5]. In particular, spatial path problems one or more edges to be added to the graph, given a penalty consist of a set of points and accessibility relations between proportional to distance for adding new edges. (We do this them. Although the distribution we propose may be config- by considering a complete graph C,anaugmentationofG ured to model bidding in any of the above domains, we will with new edges weighted to reflect the distance penalty.) If use the railway domain as our motivating example since it the shortest path involves new edges—despite the penalty— is both intuitive and well-understood. then the new edges (without penalty) are added to G,and More formally, we will represent this railroad auction by replace the existing edges in C. This process models our sim- a graph in which each node represents a location on a plane, plifying assumption that there will exist uniform demand for and an edge represents a connection between locations. The shipping between any pair of cities, though of course it does goods at auction are therefore the edges of the graph, and not mimic the way new links would actually be added to bids request a set of edges that form a path between two a rail network. Our technique produces slightly non-planar nodes. We assume that no bidder will desire more than one graphs—graphs on a plane in which edges occasionally cross path connecting the same two nodes, although the bidder at points other than nodes. We consider this to be reason- may value each path differently. able, as the same phenomenon may be observed in real-world 4.1.1 Building the Graph rail lines, highways, network wiring, etc. Determining the “reasonableness” of a graph is of course a subjective task The first step in modeling bidding behavior for this prob- unless more quantitative metrics are used to assess quality; lem is determining the graph of spatial and connective re- we see the identification and application of such metrics (for lationships between cities. One approach would be to use this and other distributions) as an important topic for future an actual railroad map, which has the advantage that the work. resulting graph would be unarguably realistic. However, it would be difficult to find a set of real-world maps that 4.1.2 Generating Bids could be said to exhibit a similar sort of connectivity and Given a map of cities and the connectivity between them, would encompass substantial variation in the number of there is the orthogonal problem of modeling bidding itself. cities. Since scalability of input data is of great importance We propose a method which generates a set of substitutable 3Electric power distribution is a frequently discussed real bids from a hypothetical agent’s point of view. We start world problem which seems superficially similar to the prob- with the value to an agent for shipping from one city to lems discussed here. However, many of the complementari- another and with a shipping cost which we make equal to the ties in this domain arise from physical laws governing power Euclidean distance between the cities. We then place XOR flow in a network. Consideration of these laws becomes very bids on all paths on which the agent would make a profit complex in networks of interesting size. Also, because these − laws are taken into account during the construction of power (i.e., those paths where utility cost > 0). The path’s value networks, the networks themselves are difficult to model us- is random, in (parameterized) proportion to the Euclidean ing randomly generated graphs. For these reasons, we do distance between the chosen cities. Since the shipping cost not attempt to model this domain. is the Euclidean distance between two cities, we use this as Let num cities = f(num goods) Place nodes at integer vertices (i, j) in a Randomly place nodes (cities) on a unit box plane, where 1 ≤ i, j ≤ (num goods) Connect each node to its initial connections For each node n: nearest neighbors If n is on the edge of the map For i =1 to num building paths: Connect n to as many hv-neighbors as C = G possible For every pair of nodes n1,n2 ∈ G where Else ¬e(n1,n2): If rand(0, 1) ≤ three prob Add an edge to C of length Connect n to a random set of building penalty · three of its four hv-neighbors Euclidean distance(n1,n2) Else Choose two nodes at random, and find the Connect n to all four of its shortest path between them in C hv-neighbors If shortest path uses edges that do not While rand(0, 1) ≤ additional neighbor: exist in G: For every such pair of nodes Connect g to one of its n1,n2 ∈ G add an edge to G with d-neighbors, provided that the length Euclidean distance(n1,n2) new diagonal edge will not End If cross another diagonal edge End For End While If total number of edges in G = num goods, End For restart Figure 4: Graph-Building Technique Figure 2: Graph-Building Technique

While num generated bids < num bids: mains unchanged except for the assignment of a number of units to each bid. Randomly choose two nodes, n1 and n2 d = rand(1, shipping cost factor) cost = Euclidean distance(city1,city2) 4.2 Proximity in Space value = d · Euclidean distance(city1,city2) There is a second broad class of real-world problems in − Make XOR bids of value cost on every path which complementarity arises from adjacency in two-dimen- from city1 to city2 with cost < value If there are more than max bid set size such sional space. An intuitive example is the sale of adjacent paths, bid on the max bid set size paths pieces of real estate [19]. Another example is drilling rights, that maximize value − cost. where it is much cheaper for an (e.g.) oil company to drill End While in adjacent lots than in lots that are far from each other. In this section, we first propose a graph-generation mechanism Figure 3: Bid-Generation Technique that builds a model of adjacency between goods, and then describe a technique for generating realistic bids on these goods. Note that in this section nodes of the graph represent the lower bound for value as well, since only bidders with the goods at auction, while edges represent the adjacency such valuations would actually place bids. relationship. Note that this distribution, and indeed all others pre- sented in this paper, may generate slightly more than num bids 4.2.1 Building the Graph bids. In our experience CA optimization algorithms tend not There are a number of ways we could build an adjacency to be highly sensitive in the number of bids, so we judged it graph. The simplest would be to place all the goods (loca- more important to build economically sensible sets of sub- tions, nodes) in a grid, and connect each to its four neigh- stitutable bids. When generating a precise number of bids is bors. We propose a slightly more complex method in order important, an appropriate number of bids may be removed to permit a variable number of neighbors per node (equiva- after all bids have been generated so that the total will be lent to non-rectangular pieces of real estate). As above we met exactly. place all goods on a grid, but with some probability we omit Note that 1 is used as a lower bound for d because any bid- a connection between goods that would otherwise represent der with d<1 would find no profitable paths and therefore vertical or horizontal adjacency, and with some probabil- would not bid. ity we introduce a connection representing diagonal adja- This is CATS 1.0 problem 1. CATS default param- cency. (We call horizontally- or vertically-adjacent nodes eters: initial connections =2,building penalty = hv-neighbors and diagonally-adjacent nodes d-neighbors.) 2 1.7, num building paths = num cities /4, Figure 5 shows a sample real estate graph, generated by shipping cost factor =1.5, max bid set size =5, the technique described in Figure 4. Nodes of the graph are and f(num goods)=0.529689 ∗ NUMGOODS +3.4329. shown with asterisks, while edges are represented by solid lines. The dashed lines show one set of property boundaries 4.1.3 Multi-Unit Extensions: Bandwidth Allocation, that would be represented by this graph. Note that one Commodity Flow node falls inside each piece of property, and that two pieces This model may also be used to generate realistic data of property border each other iff their nodes share an edge. for multi-unit CA problems such as network bandwidth al- location and general commodity flow. The graph may be 4.2.2 Generating Bids created as above, but with a number of units (capacity) To model realistic bidding behavior, we generate a set of assigned to each edge. Likewise, the bidding technique re- common values for each good, and private values for each 4 Routine Add Good to Bundle(bundle B) "regions" "edges" rand(0, 1) ≤ jump prob "boundaries" If : 3.5 Add a good g/∈ b to B, chosen

3 uniformly at random Else:  = ( ) () 2.5 Compute s x/∈B,y∈B,e(x,y) pn x [pn is defined below] 2 ∈ Choose a random node x/B from the pn(x) 1.5 distribution y∈B,e(x,y) s Add x to B 1 End If

0.5 End Routine

0 0 0.5 1 1.5 2 2.5 3 3.5 4 Figure 6: Add Good to Bundle for Spatial Proxim- ity Figure 5: Sample Real Estate Graph

n2 are each connected to B by one edge, and the private good for each bidder. The common value represents the valuation for n1 is twice that for n2 then the probability appraised or expected resale value of each individual good. of adding n1 to B, p(n1), is 2p(n2). Further, if n1 has 3 The private value represents how much one particular bidder edges to nodes in B while n2 is connected to B by only values that good, as an offset to the common value (e.g., a 1 edge, and the goods have equivalent private values, then private value of 0 for a good represents agreement with the p(n1)=3p(n2). Once we have determined all the goods common value). These private valuations describe a bidder’s in a bundle we set the price offered for the bundle, which preferences, and so they are used to determine both a value depends on the sum of common and private valuations for for a given bid and the likelihood that a bidder will request the goods in the bundle, and also includes a function that is a bundle that includes that good. There are two additional superadditive (with our parameter settings) in the number components to each bidder’s preferences: a minimum total of goods.6 Finally, we generate additional bids that are sub- common value, and a budget. The former reflects the idea stitutable for the original bid, with the constraint that each that a bidder may only wish to acquire goods of a certain bid in the set requests at least one good from the original recognized value. The latter reflects the fact that a bidder bid. may not be able to afford every bundle that is of interest to This is CATS 1.0 problem 2. CATS default param- him. eters: three prob =1.0, additional neighbor =0.2, To generate bids, we first add a random good, weighted max good value = 100, max substitutable bids =5, by a bidder’s preferences, to the bidder’s bid. Next, we additional location =0.9, jump prob =0.05, additivity = determine whether another good should be added by draw- 0.2, deviation =0.5, budget factor =1.5, resale factor = ing a value uniformly from [0,1], and adding another good 0.5, and S(n)=n1+additivity.Notethatadditivity =0gives if this value is smaller than a threshold. This is equiva- additive bids, and additivity < 0 gives sub-additive bids. lent to drawing the number of goods in a bid from a de- cay distribution.45 We must now decide which good to 4.2.3 Spectrum Auctions add. First we allow a small chance that a new good will A related problem is the auction of radio spectrum, in be added uniformly at random from the set of goods, with- which a government sells the right to use specific segments outtherequirementthatitbeadjacenttoagoodinthe of spectrum in different geographical areas[18, 2].7 Itispos- current bundle B . (This permits bundles requesting un- sible to approximate bidding behavior in spectrum auctions connected regions of the graph: for example, a hotel com- by making the assumption that all complementarity arises pany may only wish to build in a city if it can acquire from spatial proximity.8 In this case, our spatial proximity land for two hotels on opposite sides of the city.) Oth- model can also be used to generate realistic bidding distri- erwise, we select a good from the set of nodes bordering butions for spectrum auctions. The main difference between the goods in B. The probability that some adjacent good this problem and the real estate problem is that in a spec- n1 will be added depends on how many edges n1 shares trum auction each good may have multiple units (frequency with the current bundle, and on the bidder’s relative pri- bands) for sale. It is insufficient to model this as a multi- vate valuations for n1 and n2. For example, if nodes n1 and unit CA problem, however, if bidders have the constraint 9 4We use Sandholm’s [24] term “decay” here, though the that they want the same frequency in each region. Instead, distribution goes by various names—for a description of the 6 distribution please see Section 4.6.1. Recall the discussion in Section 2.3.3 motivating the use 5 of superadditive valuations. There are two reasons we use a decay distribution here. 7 First, we expect that most bids will request small bundles; Spectrum auctions have not historically been formulated a uniform distribution, on the other hand, would be ex- as general CA’s, but the possibility of doing so is now being explored. pected to have the same number of bids for bundles of each 8 cardinality. Also, bids for large bundles will often be com- This assumption would be violated, for example, if some putationally easier for CA algorithms than bids for small bidders wanted to secure some spectrum in all metropolitan bundles, because choosing the former more highly restricts areas. Clearly the problem of realistic test data for spectrum the future search. Second, we require a distribution where auctions remains an area for future work. the expected bundle size is unaffected by changes in the total 9To see why this cannot be modeled as a multi-unit CA, number of goods. Some other distributions, such as uniform consider an auction for three regions with two units each, and binomial, do not have this property. and three bidders each wanting one unit of two goods. In For all g, c(g)=rand(1,max good value) Build a fully-connected graph with one node for While num generated bids < num bids: each good Label each edge from n1 to n2 with a weight For each good, reset d(n1,n2)=rand(0, 1) p(g)=rand(−deviation · max good value, deviation + max good value) ( )+ · Figure 8: Graph-Building Technique pn(g)= p g deviation max good value 2·deviation·max good value Normalize pn(g) so that pn(g)=1 Routine Add Good to Bundle(bundle B) g = ( ) · ( ) B = {} Compute s x/∈b,y∈B d x, y pn x Choose a node g at random, weighted by Choose a random node x/∈ B from the () ( ) · pn(x) pn , and add it to B distribution y∈B d x, y s While rand(0, 1) ≤ additional location Add x to B Add Good to Bundle(B) End Routine ( )= ( ( )+ ( )) + (| |) value B x∈B c x p x S B ( ) ≤ 0 If value B on B, restart bundle Figure 9: Routine Add Good to Bundle for Arbi- generation for this bidder Bid value(B) on B trary Relationships budget = budget factor · value(B)  = · ( ) min resale value resale factor x∈B c x Construct substitutable bids. For each ularity in the complementarity relationships between goods good gi ∈ B: will still exist. Consider an auction of different, indivisi- Initialize a new bundle, Bi = {gi} ble goods, e.g. for semiconductor parts or collectables, or | | | | While Bi < B : for distinct multi-unit goods such as the right to emit some Add Goodto Bundle(Bi ) = ( ) quantity of two different pollutants produced by the same Compute ci x∈Bi c x End For industrial process. In this section we discuss a general way Make XOR bids on all Bi where of modeling such arbitrary relationships. 0 ≤ value(B) ≤ budget and ci ≥ min resale value. 4.3.1 Building the Graph If there are more than We express the likelihood that a particular pair of goods max substitutable bids such bundles, bid will appear together in a bundle as being proportional to the on the max substitutable bids bundles having the largest value weight of the appropriate edge of a fully-connected graph. End While That is, the weight of an edge between n1 and n2 is propor- tional to the probability that, having only n1 in our bundle, Figure 7: Bid-Generation Technique we will add n2. Weights are only proportional to probabili- ties because we must normalize the sum of all weights from a given good to 1 in order to calculate a probability. the problem can be modeled with multiple distinct goods per node in the graph, and bids constructed so that all nodes 4.3.2 Generating Bids added to a bundle belong to the same ‘frequency’. With this Our technique for modeling bidding is a generalization of method, it is also easy to incorporate other preferences, such the technique presented in the previous section. We choose as preferences for different types of goods. For instance, if a first good and then proceed to add goods one by one, with two different types of frequency bands are being sold, one 5 the probability of each new good being added depending megahertz wide and one 2.5 megahertz wide, an agent only on the current bundle. Note that, since in this section the wanting 5 megahertz bands could make substitutable bids graph is fully-connected, there is no need for the ‘jumping’ for each such band in the set of regions desired (generating mechanism described above. The likelihood of adding a new · the bids so that the agent will acquire the same frequency good g to bundle B is proportional to y∈B d(x, y) pi(x). in all the regions). The first term d(x, y) represents the likelihood (independent The scheme for generating price offers used in our real of a particular bidder) that goods x and y will appear in estate example may be inappropriate for the spectrum auc- a bundle together; the second, pi(x), represents bidder i’s tion domain. Research indicates that while price offers will private valuation of the good x. We implement this new still tend to be superadditive, this superadditivity may be mechanism by changing the routine Add Good to Bundle(). quadratic in the population of the region rather than ex- We are thus able to use the same techniques for assigning a ponential in the number of regions [2]. CATS includes a value to a bundle, as well as for determining other bundles quadratic pricing option that may be used with this prob- with which it is substitutable. lem, in which the common value term above is used as a This is CATS 1.0 problem 3. CATS default param- measure of population. Please see the CATS documenta- eters: max good value = 100, additional good =0.9, tion for more details. max substitutable bids =5,additivity =0.2, deviation = 0.5, budget factor =1.5, resale factor =0.5, and S(n)= 4.3 Arbitrary Relationships n1+additivity. Sometimes complementarities between goods will not be as universal as geographical adjacency, but some kind of reg- 4.3.3 Multi-Unit Pollution Rights Auctions: Future Work the optimal allocation, b1 gets 1 unit of g1 and 1 unit of g2, Bidding in pollution-rights auctions[18, 13] may be mod- b2 gets 1 unit of g2 and 1 unit of g3,andb3 gets 1 unit of g3 and 1 unit of g1. In this example there is no way of assigning eled through a multi-unit generalization of the technique frequencies to the units so that each bidder gets the same presented in this section. In such auctions, the government frequency in both regions. sells companies the right to generate specific amounts of 42.5 "airports" some pollutant. In the United States, though these auc- "airways" O’Hare tions are widely used, sulfur-dioxide is the only chemical 42 for which they are the primary method of control. Cur- 41.5 41 rent US pollution-rights auctions may therefore be modeled LaGuardia Kennedy 40.5

as single good multi-unit auctions. If the government were Latitude to conduct pollution rights auctions for multiple pollutants 40 in the future, however, bidding would be best-represented 39.5 as a multi-unit ‘Arbitrary Complementarity’ problem. The 39 Reagan problem belongs to this class because some sets of pollutants 38.5 -88 -86 -84 -82 -80 -78 -76 -74 -72 are more likely to be produced than others, yet the relation- Longitude ship between pollutants can not be modeled through any notion of adjacency. Should such auctions become viable in Figure 10: Map of Airport Locations the future, we hope that a pollution-rights distribution will beaddedtoCATS. (early takeoff deviation, late takeoff deviation, 4.4 Temporal Matching early land deviation, late land deviation), as related to their most preferred take-off and landing times (start time, We now consider real-world domains in which complemen- start time + min flight length). We generate bids for all tarity arises from a temporal relationship between goods. In bundles that fit these criteria. The value of a bundle is de- this section we discuss matching problems, in which corre- rived from a particular agent’s utility function. We define a sponding time slices must be secured on multiple resources. utility u for an agent, which corresponds to the utility The general form of temporal matching includes m sets of max the agent receives for flying from city1 to city2 if it receives resources, in which each bidder wants 1 time slice from the ideal takeoff and landing times. This utility depends on each of j ≤ m sets subject to certain constraints on how a common value for a time slot at the given airport, and the times may relate to one another (e.g., the time in set deviates by a random amount. Next we construct a util- 2 must be at least two units later than the time in set ity function which reduces u according to how late the 3). Here we concern ourselves with the problem in which max plane will arrive, and how much the flight time deviates from j = 2, and model the problem of airport take-off and land- optimal. ing rights. Rassenti et al. [21] made the first study of auc- tions in this domain. The problem has been the topic for Set the average valuation for each city’s much other work; in particular [11] includes detailed exper- airport: cost(city)=rand(0,max airport value) iments and an excellent characterization of bidder behav- Let max l = length of longest distance between ior. any two cities The airport take-off and landing problem arises because While num generated bids < num bids: certain high-traffic airports require airlines to purchase the Randomly select city1 and city2 where right to take off or land during a given time slice. However, e(city1,city2) if an airline buys the right for a plane to take off at one l = distance(city1,city2) airport then it must also purchase the right for the plane min flight length = ( · 1 ) to land at its destination an appropriate amount of time round longest flight length max l later. Thus, complementarity exists between certain pairs start time = (1 − ) of goods, where goods are the right to use the runway at a rand int ,num times min flight length dev = rand(1 − deviation, 1+deviation) particular airport at a particular time. Substitutable bids Make substitutable (XOR) bids. For are different departure/arrival packages; therefore bids will takeoff = only be substitutable within certain limits. max(1, start time − early takeoff deviation) to min(num times, start time + 4.4.1 Building the Graph late takeoff deviation): For land = takeoff + min flight length Departing from our graph-based approach above, we ground to this example in the real map of high-traffic US airports for min(start time + min flight length + which the Federal Aviation Administration auctions take-off late land deviation, num times): and landing rights, described in [11]. These are the four bus- iest airports in the United States: La Guardia International, amount late = ( − ( + Ronald Reagan Washington National, John F. Kennedy In- min land start time min flight length), 0) ternational, and O’Hare International. This map is shown delay = below. land−takeoff −min flight length We chose not to use a random graph in this example be- Bid dev · (cost(city1)+cost(city2)) · cause the number of bids and goods is dependent on the delay coeff delay · amount late number of bidders and time slices at the given airports; it amount late coeff for is not necessary to modify the number of airports in or- takeoff at time takeoff at city1 and landing at time land der to vary the problem size. Thus, num cities =4and at city2 num times = num goods/num cities. End For End For 4.4.2 Generating Bids End While Our bidding mechanism presumes that airlines have a certain tolerance for when a plane can take off and land Figure 11: Bid-Generation Technique This is CATS 1.0 problem 4. CATS default parameters: While num generated bids < num bids: max airport value =5,longest flight length = 10, l = rand int(1,max length) deviation =0.5, early takeoff deviation =1, d1 = rand int(l, num goods) late takeoff deviation =2,early land deviation = dev = rand(1 − deviation, 1+deviation) 1, late land deviation =2,delay coeff =0.9, and cur max deadline =0 amount late coeff =0.75. new d = d1 To generate substitutable (XOR) bids. Do:

4.5 Temporal Scheduling Make bids with price offered 1+ Wellman et al. [26] proposed distributed job-shop schedul- = dev · l additivity · d1/new d for all ing with one resource as a CA problem. We provide a dis- blocks [start, end] where start ≥ 1, tribution that mirrors this problem. While there exist many end ≤ new d, end > cur max deadline, − = algorithms for solving job-shop scheduling problems, the dis- end start l cur max deadline = new d tributed formulation of this problem places it in an economic new d = rand int(cur max deadline + context. In the problem formulation from Wellman et al., a 1,num goods) factory conducts an auction for time-slices on some resource. While rand(0, 1) ≤ prob additional deadline Each bidder has a job requiring some amount of machine End While time, and a deadline by which the job must be completed. Some jobs may have additional, later deadlines which are Figure 12: Bid-Generation Technique less desirable to the bidder and so for which the bidder is willing to pay less. hour of the day. This new problem differs from job-shop 4.5.1 Generating Bids scheduling primarily because different kinds of power plants In the CA formulation of this problem, each good repre- will exhibit very different utility functions, considering dif- sents a specific time-slice. Two bids are substitutable if they ferent sorts of goods to be complementary. For example, constitute different possible schedules for the same job. We some plants will want to produce for long blocks of time determine the number of deadlines for a given job according (because they have startup and shutdown costs), others will to a decay distribution, and then generate a set of substi- prefer certain times of day due to labor costs, and still oth- tutable bids satisfying the deadline constraints. Specifically, ers will have neither restriction [9]. Due to the domain- let the set of deadlines of a particular job be d1 < ···