The present invention relates to improving computer-implemented auctions and, more particularly, to improving computer-implemented auctions that include elements of clock auctions and/or combinatorial auctions.
Sellers and buyers of commodities, assets, and other goods and services are increasingly turning to auctions to assist in the sale or purchase of a wide range of items. Auctions are useful for selling a unique item (e.g., a painting), multiple heterogeneous items (e.g., several paintings), a single type of item available in multiple units (e.g., 10 kilograms of gold), and multiple types of items available in multiple units (e.g., 10 kilograms of gold and 20 kilograms of silver). And just as auctions are useful for selling items efficiently or at maximum price, they are also useful for procuring items efficiently or at minimum cost.
The design of an efficient auction, a revenue-maximizing auction or a cost-minimizing auction becomes a particularly difficult problem, technically, when the items are related.
When items are related, they are often related so as to be complements or substitutes. Two items are said to be complements when they are used together; more precisely, items A and B are complements when reducing the price of item A causes the demand for item B to increase. Two items are said to be substitutes when one is used in place of the other; more precisely, items A and B are substitutes when reducing the price of item A causes the demand for item B to fall.
One example of allocating complementary items may be the case of allocating licenses for telecommunications spectrum. A government may offer a variety of spectrum licenses, each covering a specified bandwidth in a specified geographic area. A wireless telephone company seeking spectrum rights may find that it requires a minimum of 20 MHz of bandwidth in a given geographic area, in order to be able to provide a useful service. Thus, two 10 MHz licenses covering the same geographic area may be complements. At the same time, a wireless telephone company may realize synergies from serving two geographically adjacent markets, so licenses for two adjacent markets may also be complements.
One example of allocating substitute items may be the case of allocating electricity contracts. A seller may offer three-month, six-month and one-year electricity contracts, all starting on the same date. For a buyer, these different durations are likely to be substitutes to at least a certain extent, since they each provide electricity for the initial three months.
In some of the most difficult situations some items are complements and other items are substitutes within the same allocation problem. For example, consider the case of allocating capacity at one or more capacity-constrained airport. The airport authority may offer a variety of landing slots and takeoff slots at different times of the day. Various slots may be complementary goods: for example, an airline is likely to desire a takeoff slot about one hour after each landing slot, and an airline may desire several takeoff and landing slots bunched together in order to be able to maintain a “hub-and-spoke” operation. Also, various slots may be substitute goods: for example, an airline may be able to use a 10:00 am landing slot in place of a 9:00 am landing slot, although the former slot may not be anywhere as valuable as the latter slot. The slots at two airports serving the same city are likely to be substitutes for one another, while the slots at two ends of a heavily trafficked route are likely to be complementary goods.
In recent years, there has been growing use of auction processes that allow bidders much greater freedom to bid on multiple items and to name the packages of items on which they bid during the auction. Such auctions, which may determine the packaging, pricing and allocation decisions, are referred to as “combinatorial auctions,” “package auctions,” or “auctions with package bidding.” Typically, bidders in these auctions describe the packages that they wish to acquire and make bids, often ail-or-nothing bids, for the named packages.
One especially promising version of an auction for multiple items, which will sometimes utilize package bids, is a clock auction. It is a dynamic auction process in which the auctioneer announces prices, bidders respond with quantities, the prices are adjusted according to the relation between the quantities bid and the quantities being auctioned, and the process is allowed to repeat. Such auction processes are effective for selling or procuring multiple items, including substitutes and complements. (For a longer discussion, see “System and Method for an Auction of Multiple Types of Items,” U.S. Pat. No. 7,899,734.)
A second especially promising version of an auction for multiple items is a combinatorial clock auction. It is a two-stage process that includes a dynamic auction phase followed by a later phase, the later phase comprising a package auction. The first stage may, for example, be a clock auction, and provides the efficiency and revenue advantages of a clock auction. The second stage allows the bidders to have a final opportunity to submit package bids. The process includes: implementing the dynamic auction phase, determining whether the dynamic auction phase of the auction should continue, changing from the dynamic auction phase to the later phase, implementing the package auction specified for the later phase, determining an allocation of items to bidders based on the bids. Such auction processes are also effective for selling or procuring multiple items, including substitutes and complements. (For a longer discussion, see “System and Method for a Hybrid Clock and Proxy Auction,” U.S. Pat. No. 7,729,975.)
The present invention provides improvements applicable to such auctions. In a first set of embodiments, the present invention includes an improved activity rule that constrains the bids that may be submitted by a bidder, based on the bidder's own prior bids. Such activity rules tend to reduce the possibilities for strategic behavior in the auction and improve the quality of information reported throughout the auction, thereby potentially improving the auction's performance. In a second set of embodiments, the present invention includes an improved pricing rule that appropriately discounts the amounts (as compared to linear pricing) of bids that need to be submitted by a bidder. Such pricing rules reduce the need for bidders to submit unnecessarily high bids, thereby potentially improving the auction's performance, particularly when bidders are budget-constrained. In a third set of embodiments, the present invention includes an improved iterative first-price auction. Bidders successively make bids, often a bid for a package of items at a specified price. When the auction concludes, some of these bids become “winning” bids; the respective bidders win the items specified in their winning bids and pay the prices specified in their winning bids. In some preferred embodiments, the present invention combines two or all three of these improvements. In particular, some of the preferred embodiments are iterative first-price auctions in which improved activity rules are imposed on bidders and the improved pricing rules are “supported” or “justified” by the activity rules. The pricing rule is implemented by asking the question: what is the maximum possible “exposure” of a bidder, given that the bidders' opponents are all constrained by a specified activity rule? If the pricing is determined by this approach—that is, if a bidder is never required to bid any higher than its “exposure”—then iterative first pricing yields an auction format with superior performance.
The present invention is an improved system and method for determining or facilitating a computer-implemented allocation of items among at least two parties. For simplicity, we will refer to the allocation of items as an “auction” and to the parties as “bidders”. However, the invention is not limited to the conventional use of the word “auction”; in particular, transactions resulting from the auction may be sales, leases, purchases, licenses, contracts or other relationships or allocations of resources, in either direction (from auctioning party to bidder, or reverse, or simply among the bidders), and it may involve the allocation of resources among machines (which may exchange messages that could be described as machine-generated bids).
Thus, the present invention is also an improved system and method for a computer-implemented auction of multiple items.
Various preferred embodiments of the present invention resolve a number of important limitations to the systems and methods for computer-implemented auctions in the art. Thus, the present invention offers the further technical effect of improving computer-implemented auctions, making them operate more efficiently. The present invention improves the ability to express and resolve conflicting relationships among the items being sold or procured in an auction. The present invention improves the ability of bidders to readily participate in the auction and to express their needs and preferences. The present invention improves the ability of the auctioneer to sell at higher prices the items being sold in the auction or to obtain at lower cost the items being procured in the auction. The present invention improves the efficiency of the auction process by enabling the auction to operate in shorter time, expending less computer time, fewer communications resources, and fess bidder and auctioneer time. Finally, the present invention improves the allocative efficiency of the auction process by better selecting the subset of items that will be transacted and by allocating these items to bidders who value them the highest (or, in a procurement auction, to bidders who can provide them at lowest cost).
Certain constraints are desirable in order for the present invention to operate optimally and to reach an economically efficient outcome. In many auctions, it is desirable to impose constraints on bidders that require them to bid significantly on items early in the auction in order for them to be allowed to bid on items later in the auction. Otherwise, one may find oneself in a situation where bidders refrain from submitting serious bids until near the very end of the auction (“bid sniping”), defeating the purpose of conducting a dynamic auction. One exemplary constraint in the art is an activity rule which constrains a bidder not to increase his quantity of items bid in the auction, from one round to the next. In another exemplary constraint in the art, often referred to as a pure eligibility-point-based activity rule, each item has associated with it a numerical weight (referred to as a number of eligibility points), and the restriction on increase applies not to the quantity of items bid on, but to the sum of the eligibility points of all the items that the bidder bids on (i.e., the weighted sum).
There are four principal problems in the art that the present invention addresses:
The present invention solves these problems and thereby provides a practical improvement on the art in the following respects:
Another way of stating point (4) of the previous paragraph is that: The auction design combines: (a) an activity rule that permits a new bid if and only if the new bid, together with all of the bidder's previous bids, are consistent with a bidder who is bidding in accordance with a consistent set of preferences or objectives (plus any technical assumptions such as quasilinearity or additive separability that may be assumed); and (b) a pricing rule that is justified by the activity rule, that is, the bidder is never required to bid more for a package than an amount that guarantees that the bidder will win this package, if the bidder's opponents are all constrained by the activity rule of (a) (and if the auction were to end now with no “undersell”).
In one preferred embodiment, the present invention is:
The case of auctioning a set of items which includes two (or more) items that are neither identical nor perfect substitutes to one another will, henceforth, be described for short as a situation with “multiple types of items,” or simply “heterogeneous items” or “heterogeneous objects.” Often, but not always, the heterogeneous items auctioned together will bear some relationship to one another, for example as complements or substitutes.
Throughout this document, the terms “objects”, “items”, “units”, “goods” and “services” are used essentially interchangeably. The inventive system and method may be used both for tangible objects, such as real or personal property, and intangible items, such as telecommunications licenses, electric power, or consulting services. The inventive system and method may be used in auctions where the auctioneer is a seller, buyer or broker, the bidders are buyers, sellers or brokers, and for auction-like activities which cannot be interpreted as selling or buying. The inventive system and method may be used for items including, but not restricted to, the following: public-sector bonds, bills, notes, stocks, and other securities or derivatives; private-sector bonds, bills, notes, stocks, and other securities or derivatives; communication licenses and spectrum rights; clearing, relocation or other rights concerning encumbrances of spectrum licenses; electric power and other commodity items; rights for terminal, entry, exit or transmission capacities or other rights in gas pipeline systems; airport landing rights; emission allowances and pollution permits; and other goods, services, contracts, instruments, objects, items or other property, tangible or intangible. It may also be used for option contracts or other derivatives on any of the above. It may be used in initial public offerings, secondary offerings, and in secondary or resale markets. And, while the inventive system and method may be usefully applied for financial products and markets, the substantial majority of its applications are for non-financial products and non-financial markets.
The present invention is useful for “reverse auctions” (or “procurement auctions”) conducted by or on behalf of buyers to acquire, procure or purchase various kinds of items or resources, “forward auctions” (or “standard auctions”) conducted by or on behalf of sellers to sell or offer various kinds of items or resources, and “exchanges” (or “two-sided markets”) in which both buyers and sellers place bids. Although terms such as “items or quantities demanded” (by a bidder) and “demand curve” (of a bidder) are used to describe the present invention, the terms “items or quantities offered” (by a bidder) and “supply curve” (of a bidder) are equally applicable. In some cases, this is made explicit by the use of both terms, or by the use of the terms “items or quantities transacted” (by a bidder) and “transaction curve” (of a bidder). The term “items or quantities transacted” includes both “items or quantities demanded” and “items or quantities offered”. The term “bid” includes both offers to sell and offers to buy. The term “transaction curve” includes both “demand curve” and “supply curve”. Moreover, any references to “items or quantities being offered” includes both “items or quantities being sold” by the auctioneer, in the case this is a standard auction for selling items, as well as “items or quantities being bought or procured” by the auctioneer, in the case this is a reverse auction for buying or procuring items.
Moreover, while standard auctions to sell typically involve ascending prices and reverse auctions to buy typically involve descending prices, the present invention may utilize prices that are permitted to ascend and/or descend.
Implementation of the auction on a computer system allows the auction to be conducted swiftly and reliably, even if bidders are not located on-site. Indeed, computer implementation may be most useful when one computer (e.g., a bidder terminal or a bidder's computer) is located remotely from another computer (e.g., a bidding information processor or an auctioneer computer). The auctioneer can receive large numbers of bids, determine the auction outcome, and transmit the results to bidders with minimal labor and in a very short span of time. In particular, sophisticated dynamic auction methods become feasible with a computer implementation; it becomes practical to operate iterative auction procedures in which there may be ten or more auction rounds, yet bidders can participate from different parts of the globe and the entire process can conclude in a single day.
Implementation of the auction on a computer system also makes it practical to control the exact degree to which bid-related information is disclosed to the participants. In one embodiment, all prior bid-related information is disclosed to the bidders. In another embodiment, no bid-related information is disclosed to the bidders; only the final allocation is disclosed. A number of intermediate embodiments are also possible, in which some but not all bid-related information is disclosed to the bidders. For example, in one preferred embodiment, the system discloses only the aggregate number of bids for each item in each round, as opposed to disclosing each individual bid; and in another preferred embodiment, the system discloses only the aggregate number of conflicting bids for each item in each round.
The present invention comprises a computer system that receives bids in a static or dynamic bidding process and assigns the items to bidders, and a method for receiving bids in a static or dynamic bidding process and assigning the items to bidders in the computer system. In one embodiment, the invention comprises a Bidding Information Processor (BIP), a plurality of Bidding Terminals (BTs) communicatively coupled to the BIP, and an Auctioneer's Terminal (AT) communicatively coupled to the BIP. Bidders at the BTs enter bids in multiple rounds, and may observe displayed auction information. The BIP, BTs and AT communicate and process information in order to conduct an auction.
Given recent advances in network computing, particularly cloud computing, the boundaries of what is “a computer” are no longer always clear. For example, computation of a problem may take place on one computer, while computation of sub-problems may take place on other computers. Throughout this document, the terms “a computer”, “a Bidding Information Processor”, etc. shall be interpreted as also including sets of networked computers that interact with the intention of performing a function that could in principle be performed by just a single computer.
Moreover, one or more computers of the computer system may not be classic personal computers or terminals at all, but any device that contains a processor and has the capability of connecting to other processors via a communication system, including but not limited to a “smart phone”, an iPhone, an iPad, an Android device, a Windows device, a Blackberry, a PDA, or a facsimile machine.
The network used, if any, can be any system capable of providing the necessary communication to/from a Bidding Information Processor (BIP), a Bidding Terminal (BT), and an Auctioneer's Terminal (AT). The network may be a local or wide area network such as, for example, Ethernet, token ring, the Internet, the World Wide Web, the information superhighway, an intranet or a virtual private network, or alternatively a telephone system, either private or public, a facsimile system, an electronic mail system, or a wireless communications system, or combinations of the foregoing.
Earlier auction methods and systems are described in U.S. Pat. Nos. 5,905,975, 6,021,398, 6,026,383, 7,062,461, 7,165,046, 7,729,975 and 7,899,734 and in published Application 20040054551. The foregoing patents and published applications are incorporated herein by this reference. All terminology in the following description will incorporate the terminology established in the earlier patents and applications, if not defined herein. The following description will detail the flow of the novel features of the preferred embodiments of the present system and method for clock auctions and combinatorial clock auctions. Before describing the auction process in detail, reference is made to
In many of the most useful embodiments, a computer readable medium such as the data storage device 63 and/or memory 66 stores a sequence of instructions which, when executed, implements a program for conducting the auction.
There are n bidders (n≥1), often superscripted or subscripted by i(i=1, . . . . , n), participating in the auction. Let Ω denote the set of items that are included in the auction. The aim of the auction is to allocate, among the bidders, the elements of the set Ω.
Some of the most useful embodiments of the present invention apply in situations where some of the elements of the set Ω are identical or close substitutes to one another. A type of item comprises a (nonempty) subset of Ω, such that any two items within the same type are identical items or close substitutes. Meanwhile, types are defined so that any two items of different types exhibit significant differences in time, location or any other product characteristics. There may be a single unit or multiple units within a given type. Whenever we state that there are “unique goods,” we are referring to the case where there is only a single unit within every type.
In what follows, we will assume that there are m types of items (m≥1) included in the auction. Whenever we state that there is a “plurality of types of items,” we are referring to the case where m≥2. There are often said to be “heterogeneous” goods or “dissimilar items” in the case where m≥2. Whenever we state that there are “homogeneous” goods or “identical objects,” we are referring to the case where m=1. Whenever we state that there is a “plurality of bidders,” we are referring to the case where the number, n, of bidders participating in the auction satisfies n≥2.
In many preferred embodiments of the present invention, bids comprise pairs, (S, P), where S⊂Ω is a package, i.e., a subset of the set of all items being auctioned, and P is a price at which the bidder is offering to transact for the entire package S. Stated differently, a bid comprises a package of items and an associated price for the entire package. Such a bid comprising a pair, (S, P), is defined to be a package bid.
In the event that the elements of the set Ω have been classified into types, a package can be identified by a quantity vector (Q1, . . . , Qm) of each of the m (m≥1) types of items. A package bid for bidder i would then comprise a quantity vector (Q1i, . . . , Qmi) and a price, P, at which bidder i is offering to transact for the entire set identified by the quantity vector. Such a bid (Q1i, . . . , Qmi; P) is defined to be a packaoe bid in the “type” notation.
A clock auction is an auction process that proceeds as follows. First, a price vector indicating the price of each type of item is transmitted to bidders (i.e., bidder terminals). Second, a bidder responds with a quantity vector indicating the quantity of each respective type of item that the bidder wishes to transact at the current price vector. A computer determines whether the auction should continue or terminate, and if the decision is to continue, the price vector is adjusted and the process is repeated.
More precisely, consider a situation where the items included in the auction have been classified into types. The current price vector comprises a vector, (P1, . . . , Pm), whose components represent the prices (per unit) for the m respective types of items. Each bidder i selects one or more package bids by selecting a quantity vector, (Q1i, . . . , Qmi), whose components indicate the quantities that bidder i is willing to buy (in the case of an auction to sell) or to sell (in the case of an auction to buy) at the current price vector for the m respective types of items. The quantity vector thus identifies the package of items that bidder i desires to transact. The associated price, Pi , at which bidder i is offering to buy or sell the package is implied by:
Pi=Σk=1mpkQki,
A bid of bidder i in a clock auction comprises a quantity vector, (Q1i, . . . , Qmi), together with the implied price, Pi, calculated at the current price vector. Depending on the particular embodiment of the present invention, a bidder may be permitted to select a single bid at each current price vector, or a bidder may be permitted to select more than one bid at each current price vector.
The bidding history comprises the current price vector and the bids associated with the current time and all earlier times in the current auction.
The available Quantities are specified for each type of item. The available quantity for type k of item will be denoted
With this terminology defined, a clock auction is a dynamic auction procedure whereby: the current price vector is announced to bidders; the bidders each respond with quantity vectors indicating their bids; the auctioneer determines whether the auction should continue based on the bidding history and the available quantities; the auctioneer updates the current price vector based on the bidding history and the available quantities, and the process repeats, if it is determined that the auction should continue; and the auctioneer allocates the items among the bidders and assesses payments among the bidders based on the bidding history and the available quantities, if it is determined that the auction should not continue.
Observe that a “clock auction” differs from a standard ascending-bid electronic auction in the following important sense. In standard ascending-bid electronic auctions—such as in the Federal Communications Commission auctions for radio communications spectrum or in eBay auctions—the bidders name prices (and. perhaps also, quantities) that they propose to pay for the items being auctioned, in an iterative process. In a clock auction, the auctioneer sets the pace for price increases, and bidders respond only with quantity vectors—the associated payments being implied by the current price vector.
If the auction should continue, the process goes to step 114, in which a computer establishes an updated price vector (P1, . . . , Pm). Then, at step 116, a computer updates other auction information, if any. In a preferred embodiment, the updated information includes the bidders' eligibility data, which is updated as will be shown in
if the auction should not continue, the process goes to step 118, in which a computer outputs a final message, including the allocation of items among bidders and the payments of the bidders. In one preferred embodiment, the bidding information processor takes the allocation of items among bidders to be their final bids and takes the payment of each bidder i to be the dot product of the final price vector and bidder is final quantity vector:
(P1, . . . , Pm)·(Q1i, . . . , Qmi).
The bidding information processor outputs the allocation and payment outcome through its network interface and transmits it via the network. The bidder terminals and auctioneer terminal then receive the allocation and payment outcome through their network interfaces and display the information to bidders and the auctioneer through their user interfaces. The process then ends.
A combinatorial clock auction is an auction for at least two items that includes two phases of auction: an earlier phase, in which bidders participate in a dynamic auction; and a later phase, in which bidders participate in a package auction. One exemplary combinatorial clock auction (which is a preferred embodiment of the present invention) comprises an earlier phase in which bidders participate in a clock auction and a later phase in which bidders participate in a sealed-bid package auction.
If the clock phase of the auction should continue, the process goes to step 144, in which a computer establishes an updated price vector (P1, . . . , Pm). Then, at step 146, a computer updates other auction information, if any. In a preferred embodiment, the updated information includes the bidders' eligibility data, which is updated as will be shown in
If the clock phase of the auction should not continue, the process goes to step 148, in which a computer initiates a sealed bid phase of the auction. Then, at step 150, a computer receives sealed bids (Qi, B(Qi)) from bidders. The pair (Qi, B(Qi)) is a package bid. Note that Qi=(Q1i, . . . , Qmi) indicates quantities of each of them respective types of items—thus, it identifies the package of items that bidder i desires to transact. B(Qi) is an all-or-nothing price at which bidder i is offering to transact for the entire package Qi. In step 152, a computer applies constraints, if any, to the received sealed bids, and enters only those sealed bids that satisfy said constraints. This process is illustrated in greater detail in
Before describing the inventive activity rules, it is helpful to review what is known in microeconomics as “revealed preference,” as applied to the environment of the auction.
Suppose that there are m types of items (1, . . . , m) being offered, and let s and t be two times (s<t) at which prices are quoted to an economic agent, who we will call “bidder i.” At each time, bidder i is required to make a purchase decision. Let price vector Ps≡P1s, . . . Pms) denote the prices (per unit) for the respective types of items at time s, and let Pt≡(P1t, . . . , Pmt) denote the prices (per unit) for the respective types of items at time t. Further, let quantity vector Qi,s≡(Q1i,s, . . . , Qmi,s) denote the purchase decision (a choice of package) made by bidder i at time s, and let Qi,t≡(Q1i,t, . . . , Qmi,t) denote the purchase decision made by bidder i at time t.
The most basic version of revealed preference is developed as follows. Suppose that bidder i purchased Qi,r at time r and that PrQi,r≥PrQi,s. Given that Qi,s could have been bought for the same or less money than Qi,r, but Qi,r is the package that was selected, we say that Qi,r is directly revealed preferred to Qi,s. The Weak Axiom of Revealed Preference (WARP) states that, if Qi,r is directly revealed preferred to Qi,s, then it must not also be the case that Qi,s is directly revealed preferred to Qi,r. In short, we have:
(WARP) PrQi,r≥PrQi,s→PsQi,s<PsQi,r.
A second (and stronger) version of revealed preference is developed as follows. Suppose that bidder i purchased Qi,1 when quoted the price vector P1, bidder i purchased Qi,2 when quoted the price vector P2, . . . , and bidder i purchased Qi,t when quoted the price vector Pt. Then package Qi,r is said to be revealed preferred to package Qi,s if there is a sequence j, k, . . . , l such that Pr·Qi,r≥Pr·Qi,j, Pj·Qi,j≥Pj·Qi,k, . . . , Pl·Qi,l≥Pl·Qi,s.
The data (P1, Qi,1), (P2, Qi,2), . . . , (Pi, Qi,t) are said to satisfy the Generalized Axiom of Revealed Preference (GARP) if the following implication holds:
(GARP) Package Qi,r is revealed preferred to package Qi,s→Ps·Qi,s≥Ps·Qi,r.
Intuitively, GARP requires that there is “cyclical consistency” among purchase decisions: if package Qi,r is revealed to be preferred to package Qi,s through a sequence of decisions, then package Qi,s cannot be revealed to be strictly preferred to the original package Qi,r.
For completeness, the data (Pl, Qi,l), (P2, Qi,2), . . . , (Pl, Qi,r) are said to satisfy the Strong Axiom of Revealed Preference (SARP) if the following implication holds:
(SARP) Package Qi,r is revealed preferred to package Qi,s→Ps·Qi,s<Ps·Qi,r.
It turns out that SARP may be an excessively strong condition and that the most preferred embodiments of the present invention operationalize GARP. Nevertheless, it is also possible to operationalize SARP in the invention next described.
Suppose, in addition, that bidder i has a “quasilinear” utility function, meaning that the payoff to bidder i from winning a package Qi at a price of Pi is given by the functional form vi(Qi)-Pi. Let us make this assumption of quasilinearity and consistent valuations for each package of items, in particular, a consistent valuation vi(Qi,r) for the package Qi,r, and a consistent valuation vi(Qi,s) for the package Qi,s. Observe that bidder i had the choice whether to purchase Qi,r or Qi,s at time r, but bidder i selected Qi,r. This implies that the following first inequality holds:
v
i(Qi,r)−Pr·Qi,r≥vi(Qi,s)−Pr·Qi,s.
Also observe that bidder i had the choice whether to purchase Qi,r or Qi,s at time s, but bidder i selected Qi,s. This implies that the following second inequality holds:
v
i(Qi,s)−Ps·Qi,s≥vi(Qi,r)−Ps·Qi,r.
Adding the above first inequality and second inequality produces a further inequality that we will refer to as the Quasilinear Weak Axiom of Revealed Preference (QWARP). It states that the price vectors and the quantity vectors selected by bidder i must together satisfy the following inequality:
(QWARP) (Pr−Ps)·(Qi,r−Qi,s)≥0, for all r≠s.
Intuitively, QWARP states that an economic agent expresses consistent valuations for the items only if the agent switches from demanding a first package to a second package when the second package becomes relatively less expensive than the first package.
A second (and stronger) version of quasilinear revealed preference can also be developed, by considering the implications of revealed preference through chains of comparison. The data (P1, Qi,1), (P2, Qi,2), . . , (Pt, Qi,t) are said to satisfy the Quasilinear Generalized Axiom of Revealed Preference (QGARP) if the following implication holds:
(QGARP) For every sequence {h, j, k, . . . , l} taken from {1, 2, . . . t}: Ph(Qi,h−Qi,j)+Pj(Qi,j−Qi,k)+ . . . +Pl(Qi,j−Qi,h)≥0.
Note that QGARP is a stronger condition than GARP: any data that satisfies QGARP also satisfies GARP, but the converse statement is not true. We shall refer to any condition that is stronger than GARP as a GARP refinement. Observe that SARP is also a GARP refinement.
The reason why GARP (and its refinements) will be the most appropriate conditions is because of a classic result, known as Afriat's Theorem, in the microeconomics literature:
The prior art includes activity rules for auctions based on QWARP (see, for example, published Application 20040054551). However, QWARP-based activity rules suffer from two severe limitations. First, the constraints placed on bidders are somewhat too weak. Second, a bidder may submit bids that create a “dead end” to any further bidding. For example, in the following scenario, if the bidder who is constrained by QWARP submits the indicated bids in Rounds 1-3, then the bidder's only allowable bid in Round 4 is (0, 0, 0), i.e. the bidder is forced to drop out of the auction. The second limitation may be viewed as a fatal flaw. Consider:
If bidder i's bids are constrained by QWARP, observe: (1) bidder i cannot bid on the first product in Round 4, as he bid on the second product in Round 2, and the first product has now become relatively more expensive than the second product in Round 4; (2) bidder i cannot bid on the second product in Round 4, as he bid on the third product in Round 3, and the second product has now become relatively more expensive than the third product; and (3) bidder i cannot bid on the third product in Round 4, as he bid on the first product in Round 1, and the third product has now become relatively more expensive than the first product in Round 4. As a consequence, the only remaining allowable bid for bidder i is (0, 0, 0).
Some preferred embodiments of this invention include the enforcement of new activity rules, based on GARP (or refinements of GARP). The new activity rules improve upon a pure eligibility-point approach, as well as upon a pure QWARP-based approach or a hybrid approach combining eligibility points and QWARP.
Definition: A GARP-based activity rule is a requirement that, given a history of prior bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pi−1, Qi,t−1), the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), (Pi, Qi,t), satisfies a specified subset of the set of all GARP constraints. The full GARP activity rule is the requirement that, given a history of prior bids (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), (Pi, Qi,t), satisfies GARP in full.
A similar definition can be written for any refinement of GARP:
Definition: A GARP-refinement-based activity rule is a requirement that, given a history of prior bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), (Pi, Qi,t), satisfies a specified subset of the set of the constraints defined by a specified refinement of GARP. The full GARP-refinement activity rule is the requirement that, given a history of prior bids (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), (Pt, Qi,t), satisfies the specified refinement of GARP in full. In particular, a QGARP-based activity rule is a requirement that a bid is allowable only if the resulting collection of bids satisfies a specified subset of the QGARP constraints, and the QGARP activity rule is the requirement that a bid is allowable only if the resulting collection of bids satisfies QGARP.
In step 110-3, it is checked whether the data, (P1, Qi,1), (P2, Qi,2), . . . , (Pl, Qi,l), formed by combining the current price vector and bidder i's bid, (Pl, Qi,l), with the prior bidding history (P1, Qi,1), (P2, Qi,2), . . . , (Pi−1, Qi,t−1), satisfies GARP, i.e., whether:
Package Qi,h is revealed preferred to package Qi,s→Ps·Qi,s≥Ps·Qi,h.
(In other embodiments, the data, (P1, Qi,1), (P2, Qi,2), . . . , (P1, Qi,l), is tested against only a subset of the GARP constraints.) If the data, (P1, Qi,1), (P2, Qi,2), . . . , (P1, Qi,l), satisfies the relevant GARP constraints, the process continues to step 110-5, where the bid is entered as a valid bid, and then continues to step 110-6. However, if the data, (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t), does not satisfy the relevant GARP constraints, the process goes to step 110-4, where a message is outputted that the quantity vector Qi,t is invalid. This quantity vector then is not entered as part of a valid bid. The process then goes to step 110-6, where it is determined whether all bidders have been considered. If not, the process loops back to step 110-1. If all bidders have been considered, the process goes to step 122 of
In step 210-3, it is checked whether the data, (P1m Qi,1), (P2, Qi,2), . . . , (Pt, Qi,l), formed by combining the current price vector and bidder i's bid, (Pt, Qi,t), with the prior bidding history (P1, Qi1), (P2, Qi,2), . . . , (Pt−1, Qt,t−1), satisfies QGARP, i.e., whether:
For every sequence {h, j, k, . . . , l} taken from {1, 2, . . . , t}: Ph(Qt,h−Qi,j)+Pj(Qi,j−Qi,k)+ . . . +Pl(Qi,l−Qi,j)≥0.
(In other embodiments, the data, (P1, Qi,1), (P2, Qi,2), . . . , (Pi, Qi,t), is tested against only a subset of the QGARP constraints.) If the data, (P1, Qi,1), (P2,Qi,2), . . . , (PlQi,l), satisfies the relevant QGARP constraints, the process continues to step 210-5, where the bid is entered as a valid bid, and then continues to step 210-6. However, if the data, (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t), does not satisfy the relevant QGARP constraints, the process goes to step 210-4, where a message is outputted that the quantity vector Qi,t is invalid. This quantity vector then is not entered as part of a valid bid. The process then goes to step 210-6, where it is determined whether all bidders have been considered. If not, the process loops back to step 210-1. If all bidders have been considered, the process goes to step 122 of
One methodology for verifying whether a finite data set is consistent with GARP is known in the art. An efficient way to accomplish this task is to apply Warshall's algorithm (Warshall (1962)). Warshall's algorithm comes from the computer science literature and is intended to solve a problem of minimizing the cost of a path in a graph. Varian (1982a) showed how this algorithm can be utilized to determine whether a given data set is consistent with GARP.
The following is a step-by-step procedure that verifies whether a given data set (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t), is consistent with GARP.
The following are relevant references in relation to verifying GARP:
Some embodiments of the present invention require checking whether a data set (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t) satisfies QGARP. One embodiment of the present invention is to confirm directly that there exists a set of quasilinear valuations that is consistent with the data. This can be accomplished by verifying that a solution exists for a system of revealed preference constraints. One advantage of the embodiment that will be described is that it also generates the amount of the “QGARP violation”, which may be useful for various purposes.
For purposes where bids are tested sequentially against a GARP-based activity rule, it is sufficient to verify the data set (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t) for consistency with QGARP provided that the data set (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1) has been already proven to be consistent with QGARP.
The following is a step-by-step procedure that verifies whether a given data set (P1, Qi,1), (P2, Qi,2), . . . , (PlQi,l) is consistent with QGARP, under the assumption that the data set (P1, Qi,1), (P2, Qi,2), . . . , (Pi−1, Qi,t−1) is consistent with GARP. Note that a data set with a single observation is always consistent with QGARP,
subject to:
The “QGARP violation” term intuitively shows by how much the last observation, (Pl, Qi,l), would violate QGARP when added to the data set (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1).
We now describe the process for determining the maximum bid amounts allowed for bids in the supplementary stage of a combinatorial clock auctions. For expositional clarity, this description is written with respect to the QGARP activity rule. However, the same steps can be similarly defined and described for any GARP-based activity rule including any other refinements of GARP.
Suppose that a bidder i has the following bidding history for the clock stage that lasted T rounds (P1, Qi,1), (P2, Qi,2), . . . , (PT, Qi,T). The system of supplementary bid caps for all packages is defined only up to a constant. It is convenient to allow bidder i to increase his last clock bid for package Qi,T by any positive amount. Suppose that bidder i's supplementary bid Bi(Qi,T) for the package Qi,T is PTQi,T+Δi where Δi≥0.
The system of supplementary bid caps is defined as follows:
where the term PTQi is the clock price of package Qi in round T, Δi is the difference between the clock price of package Qi,T and the supplementary bid for package Qi,T, and QGVi,T(Qi) is the “QGARP violation” term calculated for the package Qi in round T (in other words, the QGARP violation for the counterfactual data set (P1, Qi,1), (P2, Qi,2), . . . , (PT−1, Qi,T−1), (PT, Qi)).
There are several distinct approaches for calculating the maximum bid amount bidder i is permitted to bid for any given package Qi≠Qi,T in the supplementary round, including:
B
i(Qi)≤CAPi(Qi) .
B
i(Qi)≤CAPi(Qi),
and
B
i(Qi)≤Bi(Qi,t)+Pt(Qi=Qi,t)∀t∈{1, . . . , T}: PtQi≥PtQi,t
where Bi(Qi,t) is the supplementary bid of bidder i for package Qi,t.
B
i(Qi)≤Bi(Qi,t)+Pt(Qi−Qi,t) ∀t∈{1, . . . ,T},
where Bi(Qi,t) is the supplementary bid of bidder i for package Qi,t. Note that imposing revealed preference constraints with respect to all clock rounds guarantees that bidder i's bid for Qi cannot exceed the supplementary bid cap for the package Qi, i.e., Bi(Qi)≤CAPi(Qi).
While all of these approaches ensure that the bidder cannot violate the supplementary bid cap, they differ significantly in terms of what supplementary bids the bidder needs to make in order to be able to bid at the supplementary bid cap level for any given package. For example, under the “simple cap” approach, the bidder is permitted to bid at the cap level for any given package without revising the bid amounts for any of the clock packages. In contrast, under the “full cap” approach, bidders would likely need to max out all or many clock bids in order to be able to bid at the cap level. The “relative cap” approach strikes a balance between the “simple cap” and the “full cap” approaches as it only requires bid revisions for some of the clock packages. The main advantage of the “relative cap” approach is that the bidder does not need to revise its clock bids for highly valuable packages in order to be able to bid competitively for less valuable packages. This feature is very attractive in scenarios where the bidders are facing budget constraints.
In most clock auctions and combinatorial clock auctions in the art, bidder i's bid for package Qi,s, when quoted the price vector Ps, is simply taken to be the linear product (“dot product”) of Ps Qi,s. The notable exception is Ausubel's “clinching” auction (U.S. Pat. No. 6,026,383), in which items of a homogenous good with (weakly) diminishing marginal values are allocated to bidder i at the current clock price whenever the aggregate demand of bidder i's opponents drop below the available supply. If this occurs at time r, then the quoted price to bidder i at times s>r is a discount off PsQi,s.
Some preferred embodiments of the present invention develop and operationalize a more general reasoning that is applicable to general environments. We ask the question: What is the highest price that bidder i would need to bid to guarantee winning the package Qi,t? This question effectively makes the working assumption that round t will be the final round of the auction—if it is not the final round, then a generally different calculation is made in round t+1. As a general matter, the highest necessary price to assure winning is unlimited. However, if the auction is nearing the point where aggregate demand equals supply—and if bidder i's opponents are constrained, for example, by the QGARP activity rule—then bidder i might be assured of winning, despite bidding a substantial discount below PtQi,t. We now describe two versions of the relevant calculation.
(Note that, while step 504 is written as a step that precedes step 506, in other embodiments of the present invention, the two steps are intermixed, in that in calculating the solution to the optimization problem for DISAGCAPi(Ω), the system computes CAPj(Qj) as needed during step 506, rather than in advance of step 506.)
The process then goes to step 508, in which the highest price, Pi,t (Qi,t), that bidder i would need to bid to guarantee winning the package Qi,t is calculated. The calculation is:
P
i,t(Qi,t)=DISAGCAPi(Ω)−Σj≠iBj(Qj,t).
The intuition is that Pi,t (Qi,t) is set at the level such that it, summed together with all of the bids for {Qj,t}j≠i, is exactly equal to the maximum possible bid amount of all of bidder i's opponents for the entire supply Ω. In that event, for any bid by bidder i that exceeds Pi,t (Qi,t), the combination of the bids for Qi,t and for {Qj,t}j≠i is guaranteed to exceed the maximum possible bid amount of all of bidder i's opponents for the entire supply Ω.
In other preferred embodiments, the winning bids are calculated somewhat differently and so the formula for Pi,t (Qi,t) is slightly different. For example, in some embodiments, the calculation is instead:
P
i,t(Qi,t)=DISGCAPi(Ω)−Σj≠iPtQj,t.
The process then ends, and the computed value of Pi,t (Qi,t) is returned and made available for purposes such as pricing. In some embodiments, the computed value of Pi,t (Qi,t) is made available to bidder i so that bidder i is made aware of the effective amount of his bid. However, in embodiments in which the disaggregated bidding data is not disclosed to bidders, the computed value of Pi,t (Qi,t) would often not be made available to bidder i, as disclosing it might enable bidder i to infer disaggregated bidding data that was not otherwise being made available to him.
The process then goes to step 526, in which the highest price, Pi,t(Qi,t), that bidder i would need to bid to guarantee winning the package Qi,t is calculated. The calculation is now:
P
i,t(Qi,t)=AGCAPi(Ω)−Σj≠iBj(Qj,t).
The intuition is that Pi,t (Qi,t) is set at the level such that it, summed together with all of the bids for {Qj,t}j≠t, is exactly equal to the maximum possible bid amount of all of bidder i's opponents for the entire supply Ω. In that event, for any bid by bidder i that exceeds Pi,t(Qi,t), the combination of the bids for Qi,t and for {Qj,t}j≠i is guaranteed to exceed the maximum possible bid amount of all of bidder i's opponents for the entire supply Ω.
In other preferred embodiments, the winning bids are calculated somewhat differently and so the formula for Pi,t (Qi,t) is slightly different. For example, in some embodiments, the calculation is instead:
P
i,t(Qi,t)=AGCAPi(Ω)−Σj≠iPtQj,t.
The process then ends, and the computed value of Pi,t(Qi,t) is returned and made available for purposes such as pricing. In many of the preferred embodiments, the computed value of Pi,t(Qi,t) is made available to bidder i so that bidder i is made aware of the effective amount of his bid. Indeed, in some embodiments, bidder i is told that his legally-binding bid is only for Pi,t(Qi,t), rather than for the linear product of Pt and Qi,t. Unless the aggregate bidding history is being withheld from bidders—which is uncommon—there is no longer any issue of the computed value of Pi,t (Qi,t) enabling bidder i to infer disaggregated bidding data that was not otherwise being made available to him. Pi,t (Qi,t) is now based solely on aggregate information.
With a positive undersell in the final clock round, the supplementary stage is required in order to provide bidders with an opportunity to express values for the lots that were not allocated during the clock stage or any other desired packages.
With the need to carry out the supplementary stage, it is important to incorporate the pricing methodology from the clock stage into the (sealed-bid) supplementary stage.
The preferred approach that will accomplish this task is to perform the standard winner determination and pricing procedures for the sealed-bid auction that takes into account all supplementary and clock bids made by bidders. (To avoid the need to repeat the detailed workings of the combinatorial clock auction, the description in U.S. Pat. No. 7,729,975 is incorporated by reference.) In order to ensure that all bidder pay at least as much as they were quoted during the clock rounds, a set of “pseudo bidders” with “pseudo bids” is added to the winner determination problem.
For any given bidder i, a corresponding pseudo bidder is added to the winner determination problem. A set of pseudo bids for this pseudo bidder i* would include the following bids:
For practical applications, the number of pseudo bids generated according to the above procedure can be prohibitively large. In order to implement this approach, a pseudo bidder i* can be further decomposed into a set of item-specific pseudo bidders exploiting the linearity property of the price quotes from the clock rounds. This is known in the art as a way to implement reserve prices in package auctions with many heterogeneous items.
This pricing approach ensures that bidder i′s payment for its winning package Qi,f composed from the three components in the next equation:
P
i,f(Qi,f)=PT·(Qi,T∩Qi,f)+Pi,f(Qi,f\(Qi,T∩Qi,f))−(PTQi,T−Pi,T(Qi,T)),
where PT(Qi,T∩Qi,f) is the final clock price of the lots bidder i has won in the final clock round T, Pi,f(Qi,f\(Qi,R∩Qi,f)) is the price of any extra lots that bidder i might have acquired in the supplementary round (this price component is determined by the supplementary bids bidder i's opponents place in the supplementary round and in general can be as low as reserve price or as high as the final clock price for these extra lots) and PTQi,T−Pi,T(Qi,T) is bidder i's accumulated discount in the final clock round.
For expositional ease, the description herein has focused on auctions to sell. However, many or most of the preferred embodiments of the present invention are equally applicable to auctions to buy (sometimes referred to as “procurement auctions” or “reverse auctions”). First, the embodiments concerned with activity rules are easily applied by a person skilled in the art to reverse auctions. For example, just as the GARP activity rule in an auction to sell is effectively the requirement that the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt−1, Qi,t−1), (Pt, Qi,t) comes from a buyer consistently expressing its preferences, a GARP activity rule in an auction to buy is effectively the requirement that the bid (Pt, Qi,t) is allowable only if the resulting collection of bids, (P1, Qi,1), (P2, Qi,2), . . . , (Pt, Qi,t), comes from a seller consistently expressing its preferences.
Second, the embodiments dealing with pricing rules are easily applied by a person skilled in the art to reverse auctions. For example, the pricing rule in an auction to sell asks the question: What is the highest price that bidder i would need to bid to guarantee acquiring the package Qi,t from a seller? Similarly, the pricing rule in an auction to buy asks the question: What is the lowest price that bidder i would need to bid to guarantee selling the package Qi,t to a buyer?
Third, the embodiments concerned with generating iterative first-price auctions are easily applied by a person skilled in the art to reverse auctions. For example, the QGARP activity rule with the pricing rule it justifies effectively enables a “pay-as-bid” combinatorial clock auction to sell goods or services. Similarly, the QGARP activity rule with the pricing rule it justifies effectively enables a “paid-as-bid” combinatorial clock auction to buy goods or services.
In summary, many or most of the preferred embodiments of the present invention are equally applicable to reverse auctions, as well as to forward auctions.
In the course of this application, a method and apparatus for implementing auctions of multiple items has been described. The methods and apparatus described allow users to participate in various auctions with a level of attention which varies from continuous, down to the input of information on a single occasion. It should also be apparent that the required level of attention by the “auctioneer” may vary from continuous to essentially zero aside from initiating the auction. Thus, for all intents and purposes, once the basic auction description is selected and the users input desired information, the auction implemented by the invention can be essentially automatic, i.e. devoid of human interaction.
Because in the past auctions have generally been considered to be processes engaged in by persons, the feature of an automatic auction may be, by itself, considered relatively new. There are, however, many other automatic systems which interact in a way that is entirely analogous to an auction and to which the present invention could be applied. Hence, the present invention can be applied to improve the efficiency of computers which are used to operate the automatic systems, by economizing on the collection of informational inputs needed for the system and to speed the computational of optimal resource assignments. At the same time, many optimization problems encountered in the field of operations research have similar mathematical structures to the problem of determining the winners of an auction. Hence, the present invention can be applied to improve the efficiency of computer systems which are used to solve the similar optimization problems, by enabling the computations to be implemented on a system with parallel processing or generally by speeding the computation of solutions.
For example, the air conditioning plant in an office building allocates cool air among individual offices in the building via a dynamic auction. Periodically, the central computer of the air conditioning system serves the role of the “auction computer” in a clock auction, while computers interfaced with the thermostats in each suite of offices serve the role of “bidder terminals.” Each thermostat is programmed to send back bids consisting of a desired quantity of cooled air based on: the current temperature reading of the thermostat, the desired temperature in the office, and the use (if any) to which the office is currently being put. Based on the parameters to which it has been programmed, the central computer of the air conditioning system then provides the results of the auction in its allocation of cooled air among the bidding offices.
In another context, a communications, transportation or energy transmission network faces the technical problem of how to allocate its scarce network resources. The optimization problem in allocating its network resources (e.g., bandwidth, switches, etc.) has a very similar structure to the auction problem. Moreover, clock auctions are again well suited to the problem, since a network provider needing multiple types of network resources is able to iteratively bid on a vector of network resources, always knowing the price of each. Hence, the present invention can be usefully applied to improving the solution to this technical problem.
In another context, computational resources on a distributed computer system can be allocated via a clock auction. Whenever a new job requiring a given quantity of CPU time enters the system, an auction is conducted. Each member of the distributed computer system indicates the quantity of CPU time which it can make available at a given priority level or a given price. In this case, the “auctioneer computer” selects and allocates the resources to be applied to the new job in accordance with some programmed timetable and hence in this fashion provides the results of the auction.
The several examples described herein are exemplary of the invention, whose scope is not limited thereby but rather is indicated in the attached claims.
This application is a continuation of U.S. application Ser. No. 13/843,338, filed on Mar. 15, 2013, which claims the benefit of priority to U.S. Provisional Application No. 61/768,876, filed on Feb. 25, 2013. The disclosures of the aforementioned applications are hereby incorporated by reference in their entireties.
Number | Date | Country | |
---|---|---|---|
61768876 | Feb 2013 | US |
Number | Date | Country | |
---|---|---|---|
Parent | 13843338 | Mar 2013 | US |
Child | 16730315 | US |