1. Field of Invention
The present invention relates to information processing generally and more particularly to specifying a display based on valuations of information content.
2. Description of Related Art
Many publishers, online or offline, provide information in the form of listings of businesses, websites, etc. Examples include search engines, yellow pages, comparison shopping sites, etc. The common practice in publishing is to take one of the two extremes: either to provide a listing that maximizes the value to the audience (as in organic search results of search engines) [2], or to sell a clearly-marked advertising space to paying advertisers [1, 4]. In certain contexts such as comparison shopping sites (such as Yahoo! shopping) or yellow pages, it makes sense for the publisher not to restrict herself to one of these two extremes: if the publisher (e.g., the administrator of the comparison shopping site, or the publisher of the yellow pages) decides to only display information from paying advertisers, the value of the site/publication to the users can decrease, causing some of the users to use other sites/publications. On the other hand, if the publisher decides to display only content that provides the maximum value to the user, it cannot generate any revenue.
Thus, there is a need for improved methods for determining displays in ways that combine the needs of users and businesses.
In one embodiment of the present invention, a method of determining a display specification, includes: specifying business parameters for calculating a business value for the display specification, wherein the display specification includes a plurality of display locations and corresponding display values that are associated with business entities; specifying user parameters for calculating a user value for the display specification; selecting the display specification to improve a combination of the business value and the user value; and saving one or more values for the display specification (e.g., saving values for the display specification directly or through some related characterization).
According to one aspect of this embodiment the display locations may include portions of a web page and the display values include visual identifiers for the business entities.
According to another aspect, the business parameters may include maximum bid values for combinations of the business entities and the display locations.
According to another aspect, the user parameters may include user utility values for combinations of the business entities and the display locations.
According to another aspect, the combination of the business value and the user value may be a linear combination that is scaled to monetary units.
According to another aspect, selecting the display specification may include selecting a sequence of the business entities for allocation with a prescribed sequence of the display locations.
According to another aspect, the method may further include using the business parameters and the user parameters to calculate prices for the business entities corresponding to the display specification, wherein the prices are bounded by maximum bids set by the business entities and each price characterizes an effect of a corresponding maximum bid on selecting the display specification.
Additional embodiments relate to an apparatus for carrying out any one of the above-described methods, where the apparatus includes a computer for executing instructions related to the method. For example, the computer may include a processor with memory for executing at least some of the instructions. Additionally or alternatively the computer may include circuitry or other specialized hardware for executing at least some of the instructions. Additional embodiments also relate to a computer-readable medium that stores (e.g., tangibly embodies) a computer program for carrying out any one of the above-described methods with a computer. In these ways the present invention enables improved methods for determining displays in ways that combine the needs of users and businesses.
An embodiment of the present invention is shown in
As a specific example, assume there are n businesses bi (i=1, 2, . . . , n), at least some of which are bidding to be displayed on a listing that includes k display locations dj (j=1, 2, . . . , k). In the most general case, the listing does not have to be “one-dimensional”, e.g., a web page provides a two-dimensional space to display information. If the information displayed changes over time, time can also be considered as a dimension of the listing. Business bi bids a value of vij for being displayed in position dj. Typically there are more bidders than locations (e.g., n>k), and, for convenience, we assume a business that does not bid has submitted a bid of zero (0).
The publisher who owns the display must decide which businesses to display on the listing, and in which order. Let π=(π(1), π(2), π(3), . . . , π(k)) be an ordered set of businesses that specifies how businesses are assigned to the k display locations (e.g., for placing advertisements). As discussed above, the publisher may wish to balance the utility interests of both the businesses and the users.
For example, a function g may be proposed to capture the value to the businesses as g(π). Using the bid values as characterizations for value to the users, one has g(π)=Σjvπ(j),j.
Assume we have a function ƒ, which, given an ordered set π of businesses (or advertisers), gives the value ƒ(π) of this listing for the audience of users. Various definitions of this function are possible depending on the user utility that is being captured, including measures of attention, follow-up activities, and characterizations the subjective importance of the underlying information. In an online setting, perhaps the simplest way to model this function is to let ƒ(π) be proportional to the sum of click-through rates of displayed links as illustrated more specifically below.
Then the decision for the publisher in this context is to specify π the ordered set of business for the k display locations. Additionally, the publisher can specify corresponding ordered set of prices p=(p(1), p(2), p(3), . . . , p(k)). These prices should be rational in the sense that they are no more than the corresponding bid values (i.e, p(j)≦vπ(j),j). Additionally, it is desirable to set the prices to reflect the economic externalities induced by the bids.
The well-known Vickrey-Clark-Groves (VCG) mechanism can be applied to this setting [3, 5]. This mechanism selects an allocation that maximizes the total utility that the bidders and the auctioneer receive. For the example described above, we can think of the value ƒ(π) as the value that the auctioneer derives through the users from an allocation π. In other words, we let the auctioneer represent not only the publisher, but also the users; hence, the utility of the auctioneer for an allocation π is ƒ(π) plus the sum of payments the publisher receives from the businesses. With this way of modeling the auctioneer as an entity that represents both the publisher and the users, the outcome computed by the VCG mechanism is the one that selects π=(π(1), π(2), π(3), . . . , π(k)) to maximizes the combined utility function
ƒ(π)+Σjvπ(j),j. (1)
Note that Eq. (1) could include a scaling parameter (0<α≦1) on one of the terms to shift the balance between user utility and business utility.
The VCG mechanism charges each business the externality that this business imposes on others. This can be computed as follows: if π* is an ordered subset of all businesses that maximizes Eq. (1) and π*−i is an ordered subset of all businesses that maximizes this function when the bid of business i is changed to zero (0) then the amount the ith business is charged is equal to the price p(i) given by
An important property of the VCG mechanism is that it is dominant-strategy incentive compatible; that is, the best strategy of each business is to bid her true value, independent of the actions of other businesses. It should be noted that the i'th business might still be chosen in π*−i because of the value it provides to the users. And also, as noted above, Eq. (1) could include a scaling parameter (0<α≦1) on one of the terms to shift the balance between user utility and business utility.
As a more specific example, assume a setting where a publisher needs to create an online listing of n businesses, and each business i has a fixed value vi for each click, independent of which position the click is coming from. Also, assume the click-through rates are separable, i.e., the click-through rate of the a link to business i placed in position j can be estimated as αiβj, where αi is a number only depending on the business i, and, βj is a number only depending on the position j. Using this notation, the value of business i for an impression in position j can be written as vij=viαiβj. Furthermore, assume ƒ is proportional to the sum of click-through rates, i.e., ƒ(π)=CΣjαπ(j)βj, where C is a constant. In this model, the VCG mechanism selects an ordered list π that maximizes the function
If βj's are ordered in decreasing order (i.e., β1≧, β2≧ . . . ≧βk), this allocation can be calculated by simply ordering the businesses in decreasing order of their (vi+C)αi values, and assigning them to positions in this order. Note that a business with vi=0 (i.e., a business that is not willing to pay for being displayed) but a high αi can still be displayed by this algorithm. Assuming the businesses are re-indexed such that (v1+C)α1≧(v2+C)α2≧ . . . ≧(vn+C)αn, the i'th business (1≦i≦k) will be charged an amount equal to
where l is an index such that (vl+C)αl≧Cαi≧(vl+1+C)αl+1.
To evaluate this process with numerical values, assume further that the publisher is creating a listing of doctors in a small town. There are five (5) doctors in this town, numbered 1 through 5.
Due to space constraints, the publisher wants to list only four doctors in the listing, and has estimated that the satisfaction of the users of the listing can be calculated by adding up the score of the doctor listed first, the score of the doctor listed second divided by two, the score of the doctor listed third divided by three, and the score of the doctor listed fourth divided by four, and multiplying the sum by $10. For example, if the doctors are listed in decreasing order of their scores (i.e., doctors 1, 3, 2, and 4 are listed in this order), the monetary value of the user satisfaction will be:
As discussed above, the publisher has negotiated with the doctors and has evaluated the maximum amount each doctor is willing to pay to be listed. Assume the amounts each of them is willing to pay if they are listed in the first place in the listing are as in the third column of the above table, and the amount a doctor is willing to pay if they are listed in some other position i (i=2, 3, or 4) is given by the amount they willing to pay for the first position, divided by i. For example, if the doctors are ordered in decreasing order of their scores, their total willingness-to-pay (i.e., the total value to the doctors) is:
On the other hand, if the doctors are ordered in decreasing order of their willingness to pay, that is, if the listing includes doctors 5, 4, 3, and 1, in this order, their total value will be:
However, in this ordering the value of the user satisfaction will be:
Therefore, the total value of the ordering based on scores (from Eqs. (5) and (6)) is $1625+$137.5=$1762.5, and the total value of ordering based on doctors' values (from Eqs. (7) and (8)) is $941.7+$675=$1616.7.
However, the solution that maximizes the total value according to the VCG mechanism described above is to include doctors 3, 1, 4, and 5, in this order. The user satisfaction value of this ordering is
and the value to doctors is
so that the total combined value is $1466.7+$358.3=$1825. The amount the doctors will be charged can be computed using Eq. (2) and is given in the table shown in
At least some values for the results of the method can be output to a user or saved for subsequent use. For example the selected businesses π and prices p can be saved directly for future commercial operations. Alternatively, some derivative or summary form of the results (e.g., averages, interpolations, etc.) can be saved for later use according to the requirements of the operational setting.
Additional embodiments relate to an apparatus for carrying out any one of the above-described methods, where the apparatus includes a computer for executing computer instructions related to the method. In this context the computer may be a general-purpose computer including, for example, a processor, memory, storage, and input/output devices (e.g., keyboard, display, disk drive, Internet connection, etc.). However, the computer may include circuitry or other specialized hardware for carrying out some or all aspects of the method. In some operational settings, the apparatus may be configured as a system that includes one or more units, each of which is configured to carry out some aspects of the method either in software, in hardware or in some combination thereof. For example, the system may be configured as part of a computer network that includes the Internet.
At least some values for the results of the method can be saved, either in memory (e.g., RAM (Random Access Memory)) or permanent storage (e.g., a hard-disk system) for later use. For example the selected businesses π and prices p can be saved directly for future commercial operations.
Additional embodiments also relate to a computer-readable medium that stores (e.g., tangibly embodies) a computer program for carrying out any one of the above-described methods by means of a computer. The computer program may be written, for example, in a general-purpose programming language (e.g., C, C++) or some specialized application-specific language. The computer program may be stored as an encoded file in some useful format (e.g., binary, ASCII).
As described above, certain embodiments of the present invention can be implemented using standard computers and networks including the Internet.
Although only certain exemplary embodiments of this invention have been described in detail above, those skilled in the art will readily appreciate that many modifications are possible in the exemplary embodiments without materially departing from the novel teachings and advantages of this invention. For example, aspects of embodiments disclosed above can be combined in other combinations to form additional embodiments. Accordingly, all such modifications are intended to be included within the scope of this invention.
The following references are related to the disclosed subject matter: