# Patent

## Title
Method of searching

## Abstract

A method of searching that comprises receiving a user query from a user. After receiving the user query, the method performs a search based on the user query to produce results that are ranked. The results comprise references to entities. The method contacts the entities to determine whether entities in the results desire to change their rank in the results, and charges entities that increase their rank. After charging the entities and changing rankings of the results, the method reports the results with changed rankings to the user, and credits entities that decrease their rank.

## Background
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention generally relates to a method of performing a network search (e.g., for web sites) that permits entities in the search results to trade search ranking positions in exchange for monetary payments.
2. Description of the Related Art
Within this application several publications are referenced by arabic numerals within parentheses. Full citations for these, and other, publications may be found at the end of the specification immediately preceding the claims. The disclosures of all these publications in their entireties are hereby expressly incorporated by reference into the present application for the purposes of indicating the background of the present invention and illustrating the state of the art.
A widely accepted dictum about Internet content is that “everybody wants it, but nobody wants to pay for it.” This is especially true, and quite acutely felt, in the business of web searching. Building a high-quality web search engines is an expensive and formidable proposition for various reasons. These include investments in hardware, software, personnel, maintenance, and especially the need to maintain constant availability and high quality even as web content evolves rapidly in volume (currently major search engine search from among 3.3 billion web pages) as well as variability of formats (HTML, including servlet pages, forms/templates, newsgroups, news feeds, blogs, image/media-rich pages, pages in various languages).
Despite the numerous challenges involved in building a web search engine, it is unclear if this industry can sustain itself profitably in the long run. With end-users not particularly keen on paying for search services, search engine rely on revenue from paid placement, paid inclusion, and targeted advertising to make their profit. The repercussions of this situation are not good news for users of the web: the nearly insurmountable technical and financial barriers that exist for new entrants might lead to lack of competition, and eventually, to compromising the quality of web search. Given that search engine are one of very few ways of bringing order to an otherwise chaotic web, the lack of a thriving search engine industry could ultimately undermine the richness of our web browsing experience.
The invention described below provides a method to infuse a limited form of market economics into the ranking of search results. The invention creates incentives for search engine to build and maintain very high quality ranking methods, and for content creators to build excellent web sites on specific topics. Furthermore, the invention ultimately enhances the quality of the search experience for the users of search engines.
SUMMARY OF THE INVENTION
The invention provides a method of searching that comprises receiving a user query from a user. After receiving the user query, the method performs a search based on the user query to produce results that are ranked. The results comprise references to entities. The method contacts the entities to determine whether entities in the results desire to change their rank in the results, and charges entities that increase their rank. After charging the entities and changing rankings of the results, the method reports the results with changed rankings to the user, and credits entities that decrease their rank.



BRIEF DESCRIPTION OF THE DRAWINGS
The invention will be better understood from the following detailed description with reference to the drawings, in which:
FIG. 1 is a schematic diagram of a computer network system in which the invention would operate;
FIG. 2 is a diagram illustrating the operation of the invention;
FIG. 3 is a flowchart illustrating the operation of the invention; and
FIG. 4 is a system diagram illustrating a computer system upon which the invention can be implemented.



DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS OF THE INVENTION
Described below is a method/system where search engine conducts a limited form of trade for the top positions in their search results. In contrast to paid placement, paid inclusion, and targeted advertising, with the inventive methodology, all parties concerned, the search engine companies, users of web search, and content creators on the web, etc. will derive significant benefits. The invention also allows the search engine to reorder search results based on market preferences, while staying close to the original ordering to the extent desirable.
As shown in FIGS. 1 and 2, with the invention, a search engine 22 ranks web pages 20 for a given query from a user 24 according to the search engine's 22 internal ranking mechanics, then announces (for each epoch of the mechanism, say, after every crawl) the top k winners, for some parameter k (say, 10). The top 10 winners are shown in the left column of FIG. 2, labeled “Original Search Results.” Each interested party among the k winners then conducts a limited form of trade for their positions in the output of the search, and the results are presented in the outcome determined by this trade (until the next epoch). After the trade, FIG. 2 illustrates the “Reordered Search Results” in the right column, where the seventh and tenth ranked web sites are reordered first and second, and where the original first and second ranked web sites are reordered seventh and tenth.
One driving motivation for the invention is that today's search engines employ rather awkward means to maintain a revenue stream. These include paid placement (where the owner of a web site pays the search engine to place their URL near the top of the search results for specific queries), paid inclusion (where the owner of a web site pays the search engine to have their site crawled, possibly to varying degrees of detail), targeted advertising (where the owner of a web site pays the search engine to list their URL alongside the search results for specific queries, often clearly indicating that these are not part of the primary result set).
Some important disadvantages of these conventional schemes are discussed below. First, paid placement suffers from the obvious drawback of resulting in poor quality of search results. As search engine technology evolves, it has become clear that paid placement is extremely unpopular among users. Another serious problem with paid placement is the lack of sovereignty for a good website: no matter how hard it tries to improve its content, and no matter how good it is (even in the view of the ranking method employed by the search engine) it is not guaranteed a top spot.
Targeted advertising overcomes some of the drawbacks of paid placement, but is often annoying or completely ignored. Indeed, the more often a user visits a web site, the more easily the user appears to tune out the auxiliary content surrounding the main portion of the page that is focused on. Examples include target advertising in search engines, portals, templates surrounding online news articles, etc. Targeted advertising also suffers from some technological idiosyncrasies. For example, for the query “cruise control,” one of the popular search engines lists advertisements for various companies that offer cruise packages (of the travel-in-a-ship kind) and travel websites.
Paid inclusion seems unattractive to the party that pays the search engine to have their site crawled, only to discover that they are still not in the first page of search results for the most important queries of interest. Some conventional paid inclusion services do not guarantee placement in the top page of the search results, or any favorable position within the search engine database. Therefore, paid inclusion is not completely satisfactory for businesses, and search engines have recognized and acknowledged this.
Additionally, there are some further drawbacks to the current setup of search engine economics. Some of the most highly rated web sites for various queries turn out to be built and maintained by non-profit, grassroots organizations. Another category of websites often rated highly are “hub pages” [2], which are hand-picked collections of hyperlinks to good pages on some topic. While the creators of this content have put in tremendous amount of work in creating excellent sites that offer information, analysis, and more, they derive no ostensible financial benefit from their efforts. Similarly, a for-profit business that gets listed highly for some query might still covet a higher position, and be willing to pay for it, but the present setup offers no room to tap this source of revenue. Finally, as mentioned earlier, search engines 22 spend extensive resources and innovation in creating good ranking methods that satisfy the often-conflicting requirements of high accuracy (precision and recall), low-spam, quick responses, etc. While the businesses that are listed in the top few positions for popular queries derive obvious and non-trivial financial gains from the listings, the search engine company itself is not a direct beneficiary of any of these gains.
Therefore, the invention provides a system where those in the top k results are allowed to trade positions in exchange for monetary payment. In one example, let Q be some query from the user 24, and let k be some parameter, chosen by the search engine 22 for the query Q. Think of k=30 for a typical query with today's search engines 22. Time is divided into epochs, where within each epoch the search results for query Q will be the same. A convenient way to think of an epoch is as a crawl/index cycle, the time between two successive updates of the index in a way that affects the top k results for query Q. At the beginning of the epoch, the search engine 22 publishes the top k results for query Q, and invites the (owners of the) websites 20 in this list to participate in a trade of their position in this list. A website w of rank r then turns in a non-increasing sequence of k integers, Uw(1)≧ . . . ≧Uw(r)≧ . . . ≧Uw(k), where Uw(i) denotes w's utility of being listed at position i. Thus for i<r, Uw(i)−Uw(r) denotes the additional utility derived by w by being listed at position i instead of position r, and is interpreted as how much w is willing to pay to be at position i. For r>i, Uw(r)−Uw(i) denotes w's utility loss in being ranked i instead of r, and is interpreted as how much w is willing to accept to be at position i. The utilities are a rough measure of how much inherent value website w places in being at various positions of the search for query Q.
Once all the utilities are available, the search engine 22 computes a reordering of the top k results, along with corresponding payoff values for each website (as shown in FIG. 2). For website w whose initial rank is r and final rank is r′, the payoff p(w) must satisfy p(w)<Uw(r′)−Uw(r) if r′<r, and p(w)>Uw(r)−Uw(r′) if r′>r. Websites w whose rank improves pay the search engine 22 the value p(w), and websites w whose rank became worse receive a payment of p(w) from the search engine 22.
A reordering along with a payoff sequence is said to be feasible if the total payments by the search engine 22 do not exceed the total payments to the search engine 22, and is said to be balanced if they are equal. In the case of feasible, non-balanced payoffs, the excess payments made to the search engine 22 become profit for the search engine 22.
One salient feature of the invention is its immunity to spam. With the invention, a web page that did not receive a rank of k or better simply does not get to participate in the trade for top positions. If the search engine 22 does not produce poor quality (spam) pages in the top k, the invention guarantees that the user will never see one of these pages in the search screen (unlike paid placement or targeted advertising). This significantly enhances the search/browsing experience for the user 24. Equivalently, the search engine 22 can guarantee spam-proofness in the results without having to forego a source of revenue.
Further, the invention provides sovereignty by allowing a website to maintain its (earned) rank for a query. Namely, if website w has rank r, simply letting Uw(i)=−∞ for i>r ensures that no reordering will assign w a rank worse than r. Note that it can still aspire to improve its rank by trading for a higher place. (In practice, −∞ will be replaced by a negative value that is larger in magnitude than the largest of all finite utilities of all websites at position r). Secondly, a website has complete control of what it can do to improve its search rank. In other words, the invention does not deny a website the opportunity to maintain/enhance its rank by improving its content and/or relevance to the query. Thus, even if a business does not have the monetary strength to buy a higher spot, it can achieve the same effect by improving the quality of their website.
Further, the invention can be incrementally deployed. Since the invention provides a per-query trade, it allows for easy and incremental deployment. Namely, search engines 22 can try pilot projects where they deploy the scheme for a small number (e.g., 1000) of popular queries. This will give insight into how users 24 react to the trading of search result positions, and into how effective a revenue source this turns out to be. It is also quite easy to turn off the mechanism by simply reverting to the original rankings. Another mode to deploy the invention is to offer the default search with reorderings, and offer a paid premium service for access to the original rankings. The scheme is also incremental in a different sense. Namely, by choosing different values of k, the search engine 22 can control the size of the pool of participants 20 in the trade. More participants likely will mean more revenue, but could also mean that the results could be more drastically reordered. Yet another notion of incrementality is with respect to time. Different businesses can opt to trade for higher spots at different times of the year, depending on their business cycles.
The invention also provides anonymous trading. With the invention, after a website w submits its utility values, it has no control over which website from the top k list might usurp it in the rankings. Specifically, it might be the case that a website ends up selling its position to a competitor ranked below it. The invention can also allow other forms of trade that are not anonymous, where a website allows/disallows specific trades with its competitors.
Search engines 22 are one beneficiary of the invention. By charging a modest fee for each participant of the trade, or by producing a non-balanced feasible reordering/payoff, search engines 22 can create a new source of revenue. This revenue source comes at near-zero additional cost, since the invention depends only on the ranking that the search engine 22 already produces. In addition, creators of content have the option of translating the effort involved in creating and maintaining good websites into suitable financial reward. For example, it is conceivable that a large corporation, whose rank for a query is below the top 10, might be interested in acquiring one of the top spots held by several non-profit user groups. Such a trade naturally benefits both parties.
Thus, with the invention, a business that maintains a top k web site on some topic now has the opportunity to improve their ranking in the search results by making suitable payments. This is a significantly better situation than any of the present schemes, namely targeted advertising, paid placement, and inclusion. With targeted advertising, businesses run the risk of users 24 “tuning out” due to “ad fatigue”; with paid placement, search engines 22 run the risk of losing patronage in the long run, and consequently, the businesses that pay to be placed do not reach the intended market.
Finally, users 24 of search engines 22 stand to benefit in some obvious and some subtle ways. As mentioned earlier, there is no significant compromise of quality of search, since the trade is limited to the websites 20 that are already deemed good by the search engine 22. Furthermore, the absence of paid placements and targeted advertisements, together with the “top k quality assurance” from the search engine 22, implies that seasonal promotions from businesses that appear on the top spots might be significantly beneficial to many users 24. In the presence of a trading mechanism among the top k winners, several high-quality web pages 20 will emerge on specific topics, created purely with the intent of participating in the trade for financial gains. Currently, there is significant incentive to be placed in the top 10 search results for a query, but not beyond that (say, top 30). With the inventive trading mechanism, content creators will strive for a good ranking, even if it is not a top 10 spot. This, of course, translates into well-maintained, well-updated web pages 20 of high informational value to users 24.
With the invention, it is in the interests of search engines to be able to open the trade for large values of k; on the other hand, they must ensure that these k pages are of high quality. This will promote the development of robust ranking methods that are resistant to spam. A fringe benefit of the invention is that it can be used to eliminate clutter in the search results page that is caused by search results and paid placement/targeted advertisements competing for the limited real estate (screen space). With a inventive trading scheme in place, it is also possible for search engines to develop creative layouts of search results where 10-20 search results are presented in various sizes, fonts, colors, etc. (for example, simulating the look-and-feel of a newspaper).
Although this disclosure introduces an economic angle to ranking web search results, the invention is primarily a search and ranking problem. As will be shown, the inventive formulation of what constitutes the best reordering of search results, as well as some technical proposals, are closely tied to the semantics of web search.
More specifically for example, let k be a positive integer, and let [k] denote the set {1, . . . , k}. We will identify the set of top k pages (for some query) with the set [k], and also identify the set of top k positions with the set [k]. Let σ be a permutation on [k], so that for vε[k], σ(v) denotes the position assigned to the page v. For vε[k], let Uv:[k]→R denote the utility functions of the top k pages. We interpret Uv(i) as the inherent value that the owner of web page v places on being ranked i. For each v, the utility function Uv satisfies the monotonicity condition Uv(1)≧ . . . ≧Uv(k). This is entirely natural since we expect websites to place a higher value on being ranked higher. Let r=σ(v). Thus for i<r, Uv(i)−Uv(r) denotes the additional utility derived by v by being listed at position i instead of position r, and is interpreted as how much v is willing to pay to be at position i. For r>i, Uv(r)−Uv(i) denotes w's utility loss in being ranked i instead of r, and is interpreted as how much v is willing to accept to be at position i.
Given σ, U1, . . . ,Uk, the problem is to compute a permutation π on [k], along with a payoff function p: [k]→R+. The payoff function must satisfy the following condition: for each vε[k], for which σ(v)=r and π(v)=r′, we require
















p(v) < Uv(r′) − Uv(r)
if r′ < r



p(v) > Uv(r) − Uv(r′)
if r′ > r.










The payoff function will be used as follows: websites v whose rank improves (π(v)<σ(v)) pay the search engine the value p(v), and websites v whose rank became worse π(v)>σ(v)) receive a payment of p(v) from the search engine. The conditions on p(·), therefore, imply that the reordering is acceptable the websites with respect to their utility functions. Given σ,U1, . . . ,Uk, a reordering π with a payoff function p is said to be feasible if




  
    
      ∑
      
        v
        :
        
          
            π
            ⁡
            
              (
              v
              )
            
          
          >
          
            σ
            ⁡
            
              (
              v
              )
            
          
        
      
    
    ⁢
    
      p
      ⁡
      
        (
        v
        )
      
    
  
  ≤
  
    
      ∑
      
        v
        :
        
          
            π
            ⁡
            
              (
              v
              )
            
          
          <
          
            σ
            ⁡
            
              (
              v
              )
            
          
        
      
    
    ⁢
    
      
        p
        ⁡
        
          (
          v
          )
        
      
      .
    
  




In other words, the total payments by the search engine do not exceed the total payments to the search engine. We say that (π, p) is balanced if we have equality in the above. In the case of feasible, non-balanced payoffs, the excess payments made to the search engine become profit for the search engine.
We now develop two notions of what constitutes a good reordering of search results in the context of the utility functions submitted by websites. The first notion arises from an economic viewpoint, and is similar to the Gale-Shapley stable marriage criterion. Namely, we will say that a reordering π is stable with respect to U1, . . . ,Uk if there is no pair v,w of websites such that

π(v)<π(w) and

Uv(π(v))−Uv(π(w))<Uw(π(v))−Uw((e)).  (1)

In other words, a stable reordering does not leave any pair of websites v,w such that swapping their respective positions is strictly beneficial to both. Notice that if π(v)<π(w) but Uv(π(v))−Uv(π(w))<Uw(π(v))−Uw(π(w)), then v and w could exchange their positions, with w effectively paying v the amount




  
    
      1
      2
    
    ⁡
    
      [
      
        
          
            U
            w
          
          ⁡
          
            (
            
              π
              ⁡
              
                (
                v
                )
              
            
            )
          
        
        -
        
          
            U
            w
          
          ⁡
          
            (
            
              π
              ⁡
              
                (
                w
                )
              
            
            )
          
        
        +
        
          
            U
            v
          
          ⁡
          
            (
            
              π
              ⁡
              
                (
                v
                )
              
            
            )
          
        
        -
        
          
            U
            v
          
          ⁡
          
            (
            
              π
              ⁡
              
                (
                w
                )
              
            
            )
          
        
      
      ]
    
  
  ,




which is the average of w's gain in utility and v's loss in utility that results from the swap. When this swap is made with the above payoff, then w's new net utility is





  
    
      
        
          
            
              U
              w
            
            ⁡
            
              (
              
                π
                ⁡
                
                  (
                  v
                  )
                
              
              )
            
          
          -
          
            
              1
              2
            
            [
            
              
                
                  U
                  w
                
                ⁡
                
                  (
                  
                    π
                    ⁡
                    
                      (
                      v
                      )
                    
                  
                  )
                
              
              -
              
                
                  U
                  w
                
                ⁢
                
                  π
                  ⁡
                  
                    (
                    w
                    )
                  
                
              
            
            )
          
          +
          
            
              U
              v
            
            ⁡
            
              (
              
                π
                ⁡
                
                  (
                  v
                  )
                
              
              )
            
          
          -
          
            
              U
              v
            
            ⁡
            
              (
              
                π
                ⁡
                
                  (
                  w
                  )
                
              
              )
            
          
        
        ]
      
      =
      
        
          
            
              
                
                  U
                  w
                
                ⁡
                
                  (
                  
                    π
                    ⁡
                    
                      (
                      v
                      )
                    
                  
                  )
                
              
              +
              
                
                  U
                  w
                
                ⁡
                
                  (
                  
                    π
                    ⁡
                    
                      (
                      w
                      )
                    
                  
                  )
                
              
            
            2
          
          +
          
            
              
                
                  U
                  v
                
                ⁢
                
                  (
                  
                    π
                    ⁡
                    
                      (
                      v
                      )
                    
                  
                  )
                
              
              -
              
                
                  U
                  v
                
                ⁡
                
                  (
                  
                    π
                    ⁡
                    
                      (
                      w
                      )
                    
                  
                  )
                
              
            
            2
          
        
        ≥
        
          
            
              
                U
                w
              
              ⁡
              
                (
                
                  π
                  ⁡
                  
                    (
                    v
                    )
                  
                
                )
              
            
            +
            
              
                U
                w
              
              ⁡
              
                (
                
                  π
                  ⁡
                  
                    (
                    w
                    )
                  
                
                )
              
            
          
          2
        
      
    
    〉
  
  ⁢
  
    
      
        U
        w
      
      ⁡
      
        (
        
          π
          ⁡
          
            (
            w
            )
          
        
        )
      
    
    .
  




The last step uses the assumption Uw(π(v))−Uw(π(w))>Uv(π(v))−Uv(π(w))≧0,so Uw(v))/2>Uv(π(w))/2.
Similarly, it can be seen that the new net utility for v is also strictly improved. To summarize, a stable reordering is one where no pair of websites has any incentive to trade places. Notice that the definition of stability makes no mention of the original ordering σ produced by the search engine; thus, it is a purely economic notion. Our next goal is to tie this to the context of ranking search results, and this leads to the following question: given U1, . . . ,Uk and an initial ordering σ, what is the best one among all stable reorderings?
Intuitively, we would like to say that π is the best stable reordering if, for any other stable π′, π, is in some sense superior to π′. (Readers familiar with the stable marriage problem will recall that in the stable marriage setting, a matching is said to be boy-optimal if there is no other stable marriage in which some boy is paired up with a girl strictly higher in his ranking). In our context of ranking search results, we take the view that π is superior to π′ if π is “closer” to σ than π′ is. To formalize this idea, we will use the notion of Kendall tau distance between orderings. Note that any other distance measure, e.g., the Spearman footrule metric, would work just as well.
For orderings σ and π on some universe, the Kendall tau distance between σ and π, denoted by K(σ,π), is defined to be the number of pairs of elements of the universe such that σ and π disagree on their relative ordering; that is, the number of pairs (v,w) such that either σ(v)<σ(w) and π(v)>π(w) or σ(v)>σ(w) and π(v)<π(w). The Spearman footrule distance between σ and π is defined as




  
    ∑
    v
  
  ⁢
  
    
      
      
        
          σ
          ⁡
          
            (
            v
            )
          
        
        -
        
          π
          ⁡
          
            (
            v
            )
          
        
      
      
    
    .
  




We say that an ordering π that is stable with respect to U1, . . . ,Uk is optimal with respect to σ if, for any other ordering π′ that is stable with respect to U1, . . . ,Uk, we have K(σ,π)<K(σ,π′).
Naturally, it is possible to define optimality in other ways. For example, one could define the optimality of reordering together with a payoff function in terms of how much revenue the search engine derives by that reordering/payoff. Our definition suggests that it is best to modify the original ordering σ produced by the search engine as little as possible, still incorporating some measure of market economics. Thus, one may think of an optimal stable ordering as a principled way to achieve a balance between unadulterated ranking of search results and pure paid placement.
Before we discuss methods that produce good reorderings, we note that given σ,U1, . . . ,Uk, and a reordering π, it is possible to check if there is some payoff function p such that π and p form a feasible reordering of σ,U1, . . . ,Uk. Define the two sets

D={v|Uv(π(v))<Uv(σ(v))}

And

S={v|Uv(π(v))>Uv(σ(v))},

And the quantities




  
    DEFICIT
    =
    
      
        ∑
        
          v
          ⁢
          
            ∈
            v
          
          ⁢
          D
        
      
      ⁢
      
        (
        
          
            
              U
              v
            
            ⁡
            
              (
              
                σ
                ⁡
                
                  (
                  v
                  )
                
              
              )
            
          
          -
          
            
              U
              v
            
            ⁡
            
              (
              
                π
                ⁡
                
                  (
                  v
                  )
                
              
              )
            
          
        
        )
      
    
  




  And




  
    SURPLUS
    =
    
      
        ∑
        
          v
          ⁢
          
            ∈
            v
          
          ⁢
          S
        
      
      ⁢
      
        
          (
          
            
              
                U
                v
              
              ⁡
              
                (
                
                  π
                  ⁡
                  
                    (
                    v
                    )
                  
                
                )
              
            
            -
            
              
                U
                v
              
              ⁡
              
                (
                
                  σ
                  ⁡
                  
                    (
                    v
                    )
                  
                
                )
              
            
          
          )
        
        .
      
    
  



It is easy to see that if SURPLUS≧DEFICIT, then π is a feasible reordering, with the payoffs defined as follows. The payoff to v is Uv(σ(v))−Uv(π(v)) if vεD and the payoff by v is Uv(π(v))−Uv(σ(v)) if vεS. The excess SURPLUS−DEFICIT goes to the search engine. The main methodic question is to find reorderings that can be guaranteed to be feasible (with some payoff function). We observe next that a natural class of methods has the property that every reordering produced is feasible. Suppose we start from σ and make a sequence of viable swaps, namely if π is our current ordering, we swap some pair of elements v and w that are in violation of the stability condition (that is, v and w satisfy (1)). Then it is easy to see that the resulting reordering is always feasible. To make further swaps, we suitably modify the utility functions to reflect the payoff made for the swap of v and w. (In economic literature, the difference of utility and cost, or the sum of the utility and extra payments, is called the welfare.)
One of our methods outlined below is based on viable swaps, hence by the above observation; we are guaranteed to produce feasible reorderings. Before we describe our method, note that to achieve stability and feasibility simultaneously, there is a straightforward method. Namely, while the current ordering is not stable, pick a pair (v,w) that form a viable swap, and perform the swap. Since the total net utility (welfare) of all websites strictly improves with each swap, and since the set of orderings on k elements is finite, this method is guaranteed to produce a stable feasible reordering.
Our first method is aimed at producing stable reorderings that are close to the original ordering, and takes time polynomial in the sum of all utilities. The second method aims at producing a feasible reordering by a computationally tractable approach (time polynomial in k), while sacrificing stability. This method also offers the search engine the flexibility of choosing how much influence from market forces it will incorporate into its search results. It is an open question to find an method that produces a stable reordering in time polynomial in k; another open question is to find a polynomial (in k) time method to produce an stable ordering that is optimal with respect to the initial ordering σ. We believe that the first problem has a polynomial time method, while the second one is NP-hard. Another interesting directions to explore is to consider truthful mechanisms, namely the question of which reordering mechanisms ensure that the utilities are reported truthfully.
Our first method is aimed at achieving small Kendall distance between the initial ordering σ and the final ordering π, while ensuring stability. Initialize π:=σ. In each round of the method, we define a weighted graph G on k vertices, based on the current ordering π, as follows. An (undirected) edge is placed between nodes v and w if they satisfy Equation (1). (Again, these are with respect to the current net utilities of each web site, and encompass information about the payoffs from the previous rounds). The weight of this edge is the improvement in net utility for v and w. We find a maximum weight matching on the nodes of this graph, that is, a node-disjoint set of edges of maximum total weight, and for each edge (v,w) in the matching, we swap v and w. This gives the updated ordering π, which is then used for the next round. The process stops when the graph G has no edges. Note that each edge in the graph G (at any round) constitutes a viable swap; therefore, the resulting ordering is feasible. Since the method terminates when G is empty, it follows that the resulting ordering π has no pair (v,w) that is in violation of stability. Therefore, the method produces a stable and feasible reordering. In each round of the method, the sum of net utilities of all websites in their current positions increases by at least 1. Therefore, the number of rounds in the method is bounded by ΣvUv(1), and each round takes time polynomial in k and the sum of the utilities. The above version of the method makes no attempt to produce near-optimal solutions, that is, it makes no effort to produce a reordering σ with small Kendall tau distance to σ. We now point out a heuristic that aims to reduce the Kendall tau distance to σ. In creating the graph G described above, the weight on the edge (v,w) will be a function of both the improvement in the net utility for v and w that results from swapping them and the value |σ(v)−σ(w)|. Specifically, if v and w are positioned far apart in σ, then the benefit of swapping them should be reduced. This ensures that the Spearman footrule distance between σ and π (that is, Σv|π(v)−σ(v)|) is low, which, via an inequality of Diaconis and Graham [1], will ensure that K(π,σ) is small as well.
Our second method is aimed at achieving computational tractability. The approach we take here is to linearly order the web sites by their “buying power,” based on the information available in the utility functions, and the initial ordering σ of the search results. Once a single linear ordering of the web sites is achieved, and that ordering reflects their eligibility for various positions based on their financial strength, the idea is to aggregate this ranking with the original ordering a produced by the search engine, to obtain the final ordering. Given a and the utility functions U1, . . . ,Uk, define a bipartite graph whose nodes are the k web sites on one side, positions 1 through k on the other side. The edges of the graph carry costs, where cost of assigning web site v to position i is defined to be Uv(σ(v))−Uv(i). Thus for i>σ(v), the cost is non-negative and for i<σ(v), the cost is non-positive. If we then find a minimum cost perfect matching (a 1-1, onto, pairing of nodes) in this graph, that yields a linear order among the web sites, one that minimizes the total loss in utility of displacing web sites from their original positions σ. Note, that this does not guarantee that the utility loss is minimized for any one web site, but only for the system as a whole. Let τ denote the order thus obtained. Note, that the trivial solution τ=σ ensures that the total utility loss is zero (with respect to σ), so that the total utility loss produced by τ is always non-positive (that is, the net utility of the system is non-negative). In other words, τ is a feasible reordering. Now we have two rankings σ and τ of the web sites that were present in the top k results of the search engine for the query of interest. The original ordering σ is best from the search perspective, while τ offers a feasible solution that incorporates utility information. The final step is to aggregate these two orderings to arrive at a final order. A desirable aggregation in this context is to produce a ranking π that minimizes the weighted total Spearman footrule distance to σ and τ, namely, the quantity W1F(σ,π)+W2F(τ,π),where W1 and W2 are weights in the interval [0,1] so that W1+W2=1. The weights could be chosen to either make π close to σ, thus keeping the final ordering close in spirit to the original, or to make π close to τ, thus making the final ordering take into account the competition for various positions that arise from the market. The advantage of using the Spearman footrule distance here is that the aggregation problem can be solved in polynomial time. We know that with W1=0 and W2=1, we are guaranteed a feasible reordering; therefore, the natural suggestion is to find the smallest W2 such that the reordering is still feasible. This addresses our original goal of producing a feasible reordering that is close to the original ordering σ.
Therefore, as shown above, and as shown in flowchart form in FIG. 3, the invention presents a method of searching computerized networks, such as the internet, that first performs a search based on a user query 30 to produce results that are ranked. These methods are well-known and rank results that are more relevant to the query ahead of less relevant results. The results comprise references to entities (addresses on the network, such as web sites). Before reporting the results to the user 40, the invention provides that the search entity contacts the entities listed in the search results 32 to determine whether entities listed in the search results desire to change their rank when compared to other entities listed in the results. If some entities do desire to change their rank, the invention charges fees to entities that increase their rank 34 and credits (pays fees) entities that decrease their rank 36. A portion of the amount charged to entities that increase their rank can be paid to the entity performing the search 38 (helping to support the high quality search engines), and a portion will go to the entities that voluntarily decrease their rank within the search results 36 (helping to support high-content web sites).
A representative hardware environment for practicing the present invention is depicted in FIG. 4, which illustrates a typical hardware configuration of an information handling/computer system in accordance with the subject invention, having at least one processor or central processing unit (CPU) 10. CPUs 10 are interconnected via system bus 12 to random access memory (RAM) 14, read-only memory (ROM) 16, an input/output (I/O) adapter 18 for connecting peripheral devices, such as disk units 11 and tape drives 13, to bus 12, user interface adapter 19 for connecting keyboard 15, mouse 17, speaker 103, microphone 104, and/or other user interface devices such as touch screen device (not shown) to bus 12, communication adapter 105 for connecting the information handling system to a data processing network, and display adapter 101 for connecting bus 12 to display device 102. A program storage device readable by the disk or tape units, is used to load the instructions which operate the invention also loaded onto the computer system.
As discussed above, the results are limited in number, so that only entities that are produced by the search are provided an opportunity to change their rank. This keeps the search results high in quality by avoiding paid placement, which can force non-relevant or low quality web sites into the search results. In addition, the invention optimizes the reordering of the entities, so as to minimize the changes that are made to the original rank produced by the search.
The present invention and the various features and advantageous details thereof are explained more fully with reference to the nonlimiting embodiments that are illustrated in the accompanying drawings and detailed in the following description. It should be noted that the features illustrated in the drawings are not necessarily drawn to scale. Descriptions of well-known components and processing techniques are omitted so as to not unnecessarily obscure the present invention. The examples used herein are intended merely to facilitate an understanding of ways in which the invention may be practiced and to further enable those of skill in the art to practice the invention. Accordingly, the examples should not be construed as limiting the scope of the invention.
While the invention has been described in terms of preferred embodiments, those skilled in the art will recognize that the invention can be practiced with modification within the spirit and scope of the appended claims.
REFERENCES


    [1] P. Diaconis and R. Graham, “Spearman's Footrule As a Measure of Disarray”, Journal of the Royal Statistical Society, Series B, 39(2):262-268, 1977.
    [1] J. M. Kleinberg, “Authoritative Sources In A Hyperlinked Environment”, Journal of the ACM, 46(5):604-632, 1999.

## Claims

1. A method of searching comprising:
receiving a user query from a user;
after receiving said user query, performing a search based on said user query to produce results that are ranked, wherein said results comprise references to entities;
contacting said entities to determine whether entities in said results desire to change their rank in said results;
charging entities that increase their rank;
after charging said entities and changing rankings of said results, reporting said results with changed rankings to said user; and
crediting entities that decrease their rank.

2. The method according to claim 1, wherein at least a portion of the amount charged to entities that increase their rank is paid to entities that decrease their rank.

3. The method according to claim 1, wherein at least a portion of the amount charged to entities that increase their rank is paid to an entity performing said search.

4. The method according to claim 1, wherein said results are limited in number, such that only entities that are produced by said search are provided an opportunity to change their rank.

5. The method according to claim 1, further comprising optimizing reordering of said entities, wherein said optimizing minimizes changing an original rank produced during said search.

6. The method according to claim 1, wherein said entities comprise Web sites.

7. A method of searching comprising:
performing a search based on a user query to produce results that are ranked, wherein said results comprise references to entities; and
after said performing of said search and before reporting results of said search to said user,
contacting said entities to determine whether entities in said results desire to change their rank in said results;
charging entities that increase their rank; and
crediting entities that decrease their rank.

8. The method according to claim 7, wherein at least a portion of the amount charged to entities that increase their rank is paid to entities that decrease their rank.

9. The method according to claim 7, wherein at least a portion of the amount charged to entities that increase their rank is paid to an entity performing said search.

10. The method according to claim 7, wherein said results are limited in number, such that only entities that are produced by said search are provided an opportunity to increase or decrease their rank.

11. The method according to claim 7, further comprising optimizing reordering of said entities, wherein said optimizing minimizes changing an original rank produced during said search.

12. The method according to claim 7, wherein said entities comprise Web sites.

13. A method of searching comprising:
receiving a user query from a user;
after receiving said user query, performing a search based on said user query to produce results that are ranked, wherein said results comprise references to entities;
contacting said entities to determine whether entities in said results desire to change their rank in said results;
charging entities that increase their rank, wherein at least a portion of the amount charged to entities that increase their rank is paid to entities that decrease their rank;
crediting entities that decrease their rank; and
after charging said entities that increase their rank, crediting said entities that decrease their rank, and changing rankings of said results, reporting said results with changed rankings to said user.

14. The method according to claim 13, wherein at least a portion of the amount charged to entities that increase their rank is paid to an entity performing said search.

15. The method according to claim 13, wherein said results are limited in number, such that only entities that are produced by said search are provided an opportunity to change their rank.

16. The method according to claim 13, further comprising optimizing reordering of said entities, wherein said optimizing minimizes changing an original rank produced during said search.

17. The method according to claim 13, wherein said entities comprise Web sites.

18. A method of performing an internet search comprising:
inputting a user query from a user;
after said inputting of said user query, performing a search based on said user query to produce results that are ranked, wherein said results comprise references to web sites;
contacting said websites to determine whether web sites in said results desire to change their rank in said results;
charging web sites that increase their rank;
after charging said web sites and changing rankings of said results, reporting said results with changed rankings to said user; and
crediting web sites that decrease their rank.

19. The method according to claim 18, wherein at least a portion of the amount charged to web sites that increase their rank is paid to web sites that decrease their rank.

20. The method according to claim 18, wherein at least a portion of the amount charged to web sites that increase their rank is paid to an entity performing said search.

21. The method according to claim 18, wherein said results are limited in number, such that only web sites that are produced by said search are provided an opportunity to change their rank.

22. The method according to claim 18, further comprising optimizing reordering of said web sites, wherein said optimizing minimizes changing an original rank produced during said search.

23. The method according to claim 18, further comprising, after reordering said results, displaying reordered results to said user.

24. A computer storage device readable by a computer storing instructions executable by the computer to perform a method of searching comprising:
receiving a user query from a user;
after receiving said user query, performing a search based on said user query to produce results that are ranked, wherein said results comprise references to entities;
contacting said entities to determine whether entities in said results desire to change their rank in said results;
charging entities that increase their rank;
after charging said entities and changing rankings of said results, reporting said results with changed rankings to said user, and
crediting entities that decrease their rank.

25. The program storage device according to claim 24, wherein at least a portion of the amount charged to entities that increase their rank is paid to entities that decrease their rank.

26. The program storage device according to claim 24, wherein at least a portion of the amount charged to entities that increase their rank is paid to an entity performing said search.

27. The program storage device according to claim 24, wherein said results are limited in number, such that only entities that are produced by said search are provided an opportunity to change their rank.

28. The program storage device according to claim 24, wherein said method further comprises optimizing reordering of said entities, wherein said optimizing minimizes changing an original rank produced during said search.

29. The program storage device according to claim 24, wherein said entities comprise Web sites.

30. A service for searching comprising:
receiving a user query from a user;
after receiving said user query, performing a search based on said user query to produce results that are ranked, wherein said results comprise references to entities;
contacting entities to determine whether entities in said results desire to change their rank in said results;
charging entities that increase their rank;
after charging said entities and changing rankings of said results, reporting said results with changed rankings to said user; and
crediting entities that decrease their rank.

31. The service according to claim 30, wherein at least a portion of the amount charged to entities that increase their rank is paid to entities that decrease their rank.

32. The service according to claim 30, wherein at least a portion of the amount charged to entities that increase their rank is paid to an entity performing said search.

33. The service according to claim 30, wherein said results are limited in number, such that only entities that are produced by said search are provided an opportunity to change their rank.

34. The service according to claim 30, further comprising optimizing reordering of said entities, wherein said optimizing minimizes changing an original rank produced during said search.

35. The service according to claim 30, wherein said entities comprise Web sites.