Abstract:
A method, software and apparatus are provided which enable a user to obtain products and services in a manner which counteracts conflicting actions modifying raw ranking data based on merchants interests. For this purpose, an information a user&#39;s web browser is provided with modules that modify search results obtained from one or more sources including directly from merchants. When the user enters a set of key words in an entry field in an on-screen form for a web server to obtain a list of items (products and/or services) of interest to the user, the search terms are modified in the users or his agents browser to reflect the interest of the user, his management or his parents. The user or his agent receives ranking information taking the highest ranked products and obtains the product information for the most highly ranked products. The browser then reranks the products using a ranking algorithm preferred by the user that offsets information sources biases in the ranking of the product information. The algorithm adds weighting factors reflecting the modified search terms. The weighting factors are combined with the mentioned ranking mechanisms to the documents to increase the probability that certain items come to the top when the search results are presented to the shopper.

Description:
RELATED APPLICATION  
       [0001]    This is a continuation-in-part application for copending U.S. patent application Ser. No. 10/054,301 filed on Nov. 13, 2001 and entitled “Internet Strategic Brand Weighting Factor.” The contents of this application are hereby incorporated by reference.  
         [0002]    U.S. patent application Ser. No. ______ (IBM Docket CHA920020001US1) filed on even date herewith and entitled “Controlling Information Access by Bias Ranking of Search Results on a Web Browser.” 
     
    
     
       FIELD OF THE INVENTION  
         [0003]    The present invention relates to a system for customizing on-line service content presentations. More particularly, the present invention relates to brand weighting to offer product and services in a deterministic manner.  
         BACKGROUND OF THE INVENTION  
         [0004]    Typically, shoppers browse selections offered by participating on-line merchants by specifying criteria regarding the type of product they would like to find such as the manufacturers product features or price tags. Based on product attributes entered by the shopper into a browser, such as Netscape, the browser interrogates the databases of on-line merchants for the product attributes entered by the shopper into the system. The system ranks the products turned up by the database search based on ranking algorithms which take into consideration various ranking factors, such as the number of occurrences of terms in documents, the proximity of terms to one another within the documents, etc., and provides the products to the seller listed in order of their rank.  
           [0005]    While this method helps shoppers locate products and services they desire, it limits the amount of control shoppers have over the shopping environment and experience. Generally speaking, for the same set of database interrogations, each of the shoppers would receive the same set of results and in the same order. To tailor the presentations to the shopper, a number of systems analyze the on-line behavior of the shopper to vary characteristics and elements of the displays presented to the shoppers to the individual shopper&#39;s preferences and needs. The shopper&#39;s characteristics that may be used to tailor the presentations would include previous data on stores visited, time of the visit, length of the visit, merchandise viewed, purchases made, frequency of visits, etc. In addition, as described in the above mentioned U.S. patent application Ser. No. 10/054,301, a weighting factor can be added by a seller to promote certain products. The weighting factor is combined with existing ranking mechanisms to the documents to increase the probability that certain items come to the top when the search results are presented to the shopper. These pages could be used to ensure shoppers do not overlook special offers or to reduce overstocks by promoting products with a large inventory. The weighting factor is configured so as to not decrease the shoppers confidence in the ranking process. Internet service providers also can provide a vehicle for sellers to skew search results to promote products. U.S. Pat. No. 6,269,361B1 provides a scheme where bidding affects the ranking of search results of a network information provider.  
           [0006]    Therefore, it is an object of the present invention to provide a way for a USER to emphasize products the user wishes to purchase.  
           [0007]    Another object of the invention is to provide a new way for a user to express a consistent purchasing strategy.  
           [0008]    It is another object of the invention to provide a way for a user or his agent to obtain certain products and services while avoiding promotion schemes of merchant.  
         BRIEF DESCRIPTIONS OF THE INVENTION  
         [0009]    In accordance with the present invention, a method, software and apparatus are provided which enable a user to obtain products and services in a manner which counteracts conflicting actions modifying raw ranking data based on merchants interests. For this purpose, an information a user&#39;s web browser is provided with modules that modify search results obtained from one or more sources including directly from merchants. When the user enters a set of key words in an entry field in an on-screen form for a web server to obtain a list of items (products and/or services) of interest to the user, the search terms are modified in the users or his agents browser to reflect the interest of the user, his management or his parents. The user or his agent receives ranking information taking the highest ranked products and obtains the product information for the most highly ranked products. The browser then reranks the products using a ranking algorithm preferred by the user that offsets information sources biases in the ranking of the product information. The algorithm adds weighting factors reflecting the modified search terms. The weighting factors are combined with the mentioned ranking mechanisms to the documents to increase the probability that certain items come to the top when the search results are presented to the shopper. 
       
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
       [0010]    [0010]FIG. 1 is a system organization for an on-line service in a wide area network;  
         [0011]    [0011]FIG. 2 is a flow chart of a system for providing ranking in accordance with the present invention;  
         [0012]    [0012]FIG. 3 is a more detailed flow chart for the ranking module for the present invention;  
         [0013]    [0013]FIG. 4 a flow chart with the logic to apply;  
         [0014]    [0014]FIG. 5 is a diagram of data by rank provided to a shopper&#39;s computer screen;  
         [0015]    [0015]FIG. 6 is a block diagram for operation of the information consolidator;  
         [0016]    [0016]FIG. 7 is a flow diagram showing the operation of the information consolidator;  
         [0017]    [0017]FIG. 8 is a block diagram for use of PWR; and  
         [0018]    [0018]FIG. 9 is a timing diagram for the PWR. 
     
    
     DETAILED DESCRIPTION OF THE INVENTION  
       [0019]    Referring now to FIG. 1, communication between a plurality of shoppers computers  100   a  to n and a plurality of merchants servers  102   a  to n is accomplished via an on-line service through a wide area network such as the Internet  104  that includes network node computers. The network node servers manage network traffic such as the communications between any given shopper&#39;s computer and merchant&#39;s server.  
         [0020]    The shoppers&#39; computers  100  are equipped with communications software, including a WWW browser such as the Netscape browser of Netscape Communications Corporation, that allows a shopper to connect and use on-line shopping services via the Internet. The software on a shopper&#39;s computer  100  manages the display of information received from the merchants to the shopper and communicates the shopper&#39;s actions back to the appropriate merchant servers  102  so that additional display information may be presented to the shopper or the shoppers selections acted on. The connections  106  to the network nodes of the Internet may be established via a modem or other means such as a cable connection.  
         [0021]    Information regarding the merchant and the merchant&#39;s products is stored in a shopping database  108  to which the merchants servers  102  have access. This may be the merchants own database or a database of a supplier of the merchant. All product information accessible by the merchant servers that is publishable as web pages is indexed and a fulfill-text index database  110  which records the number of occurrences of each of the words and their use in the location. In addition to the servers of individual merchants, there are the servers  114  of a plurality of search engine service providers web pages, such as Google of Google Inc., which maintain full text indexes  116  of the products of the individual merchants  102   a  to  102   n  obtained by interrogating the product information databases  108  of the individual merchants.  
         [0022]    In accordance with the present invention, an information consolidator  120  is provided. An information consolidator obtains information from various ones of the merchant servers  102  and those of the search application service providers  114  and supplies it to a user. The information consolidator may be an independent source for data, or as shown by the dotted lines, associated with a merchant  102   a  or be the user  100   a  obtaining the data.  
         [0023]    The information consolidator provides added value by modification of the data it receives from its sources. As pointed out, the ranking of data provided by the merchant or search application service provider varies from that provided by ranking elements either to be helpful to the user or to add biases of the data provider. For instance, the merchants and the search application service providers each may maintain a database of information about shoppers and their buying habits to customize on-line shopping for the shopper. Operations to accomplish a customized electronic shopping environment for the shopper include accumulating data regarding the shopper&#39;s preferences. Raw data relating to the electronic shopping options, such as specific sites and specific products selected by the shopper, entry and exit times for the sites, number of visits to the sites, etc., are recorded and processed by each merchant to create a shopping profile for the shopper. Raw data may then be processed to create a preference profile for the shopper. The profile may also include personal data or characteristics (e.g., age, address, hobbies) regarding the shopper as provided by the shopper when subscribing to the service. The data accumulated on the shoppers are placed in the shoppers profile database  112  or  118  of each of the merchants. Each individual shopper&#39;s profile in the databases of the merchants and the search application service providers can differ from one to another based on the particular merchant&#39;s or service providers experience with the shopper and their profiling software. Data collection may continue during searches made by the shopper so that up-to-date profile data for the shopper is obtained and used.  
         [0024]    With information regarding the shopper involved in the shopping transaction, the merchant is able to meet the needs of the shopper, and the shopper is presented with the opportunity to view and purchase that merchandise that is most likely to be of interest since the merchant&#39;s products and services are directed toward those shoppers who have, either directly or indirectly, expressed an interest in them.  
         [0025]    As shown in FIG. 2, when the search characteristics in the form for key words are entered by the shopper  200  into the space provided on the default or home page of his/her browser, the search engine  202  of the merchant web server  102  does a search of the accessed full text index database  110  or  118  using the key words and gets a list of documents describing those products and services that contain matches to the key words. This list of documents contain basic text ranking Tf (including the number of hits, their location, etc. which are used to order the list of documents) with documents with higher scores at the top. This list is then sent to the ranking module  204  which will apply a ranking algorithm, such as the one described in the article entitled “The Anatomy of a Large-Scale Hypertextual Web Search Engine” by Sergey Brin and Lawrence Page of the Computer Science Department, Stanford University, Stanford Calif. 94305 (which article is hereby incorporated by reference) to rank the list of documents using the text factors and other rank factors, such as link analysis LA, popularity, the user&#39;s preferences Up from profile, etc. and return a reordered list of documents, with documents with higher scores at the top by providing each of the articles with a Rank Factors Score which is a number that varies from “0” to “1” so that  
         Rank Factor Score= F ( w %  Tf +%  x Popularity+ y %  LA+z % Up+ . . . )  (1)  
         [0026]    where  
         [0027]    F is the algorithmic function; and  
         [0028]    w, x, y+z are proportions applied to the various ranking factors by the algorithmic function F.  
         [0029]    Ranking algorithms may differ from one another and the Rank Factors Score generated from any given algorithm may not take into account all the rank factors listed above and may take into account other rank factors. The user of the data may have preferences for different factors or proportions than those provided by the merchants and search application providers.  
         [0030]    Another factor that may skew the raw results of a search are introduction of biases of the search application provider or the merchant. For instance as pointed out, the above mentioned U.S. patent provides for establishing an auction for ranking of data in which product sellers would bid for priority in presenting information turned up by a search. In addition in accordance with previously mentioned patent application Ser. No. 10/054,301, a strategic weighting factor (SWF) is used to promote one or more products of the merchant in accordance with the wishes of the product&#39;s merchant. For application of the weighting factor, an analysis must be done of terms found in documents that belong to common categories. To accomplish this, a document identifying the product must contain a number of words that commonly define the product. Such words are synonyms of the product and other words related to the products. For instance, the IBM Think Pad  550  product document would have words like laptop, thinkpad, notebook, companion computer, etc. Once identifying the product to be promoted and its document using the terms, the product document is given a weighting factor which varies from zero to one and it&#39;s stored in SWF database  308  as shown in FIG. 3. The ranking is then applied to the of the content in accordance with the following formula.  
           R= 1 −n (Rank Factors Score)+ n (SWF Factor)  (2)  
         [0031]    where:  
         [0032]    n=a number between zero and one inclusive. (A recommended value of n is 0.5 when both the Rank Factors Score and the SWF Factor vary from 1 to 0.)  
         [0033]    SWF=is the weighting factor for the merchants marketing strategy.  
         [0034]    As pointed out above, the first bracketed portion (Rank Factors Score) is a function F of the applied ranking factors such as the text factors Tf (including the number of occurrences of key words in documents, proximity of key words in documents, location of keywords in documents), and other ranking factors such as the documents&#39; popularity (including the number of times a given document has be accessed by shoppers, number of incoming links to this documents, etc.) The second bracketed category (SWF factor) is the weighting factor provided by the merchant to emphasize products he is interested in selling or products which he thinks the shopper may be interested in and not accounted for by the other weighting factors relating to the shopper&#39;s preferences. It can be seen that the above formula not only takes into account the merchant&#39;s marketing desires but provides them as a portion of the weighting factors in the ranking so that the merchant&#39;s desires do not necessarily outweigh other considerations and may vary to critical importance to insignificance in the ranking consideration.  
         [0035]    Usually, care taken not to overload the ranking by the SWF factor so that the shopper does not become confused by the presentation he receives relationship to his key word attributes. For instance, the value of 0.5 is selected for n when both the Rank Factors Score and the SWF range between 0 and 1. Another value for n may be more appropriate to maintain a proper relationship between the bracketed terms when other values are applied either by the algorithm or the merchant. Another factor to be avoided is the elimination of worthy candidates from the list by a lesser candidate having a high SWF Factor. This is eliminated by choosing the highest ranked products using the text ranking factors first then applying the SWF Factor after the application of the algorithmetic function so that the SWF Factor does not eliminate any of the worthy candidates but only changes the relative ranking of such worthy candidates.  
         [0036]    [0036]FIG. 3 shows how the SWF factor is added to the search results to obtain the ultimate ranking of the products turned up by the search in the full text database  110 . The search engine  202  provides the hits obtained from the document search in the appropriate full text indexes  110  and/or  118  using the search terms provided by the shopper. The ranking factors  204 , other than the SWF weighting factor, are applied to the count in step  302  to get a list of products and/or services (say ten) with the highest Rank Factor Score. The products and/or services on the list obtained by step  302  are then analyzed in step  306  to determine if any of them have a SWF weighting factor  308  applied to them. If there is only one product with a SWF, then Formula (2) is applied to that particular product  314  in the list and its rank is changed relative to the other products on the list in accordance with the results obtained with Formula (1). For instance as shown in FIG. 5, assume an article about a product with a SWF, such as a Thinkpad R Series Laptop, was ninth on the initial list and after application of its SWF in Formula (2) its R is the fourth highest, its rank would change from 9th to 4th as shown and the products ranked 4th to 8th would be changed accordingly.  
         [0037]    A problem exists when too many of the worthy candidates has a SWF Factor greater than zero. If there are more than one product with the weighting factor, then the SWF is applied to the list of results taking into consideration multiple items with SWF greater than zero in step  312  in accordance with the process shown in FIG. 4. In step  402  of FIG. 4, a list of items is received from step  312  in FIG. 3. Then in step  404  a new list is created from output of step  402  containing all items with SWF greater than zero. Output of  404  is then applied Formula (1) to each on the list generated in step  406 . Then a new sub-list of a limited number, Nt, of the items with the top Ranking R from the output of step  404  is selected in step  408 , this will ensure than only a Nt (predefined value greater than zero) number of items with SWF are taken into consideration. The SWF of all items from output list of step  402  that are not of the sublist generated in step  408  are set to zero and Formula (2) is applied to the items on the items selected by Formula (1) to reorder the rank of the items.  
         [0038]    Referring now to FIGS. 1 and 6, the information consolidator  120  maintains its own strategic weight factor SWF and/or user preference weight factor PWF databases  122  and  124 . While the strategic weight factor database adds a factor to the obtained raw ranking results to promote a merchants product, the user preference factor can be a positive or negative factor and not only affects the obtained raw ranking results, but as discussed hereinafter, also modifies the search query provided by the user by modifying or adding search terms. The user preference factor can be used for the user to express his or her personal preferences or interests. It can also be used by the employer of the user to restrict the goods presented to the user. For instance, the user&#39;s position in the company may be taken into account by placing a price limit in the search term on the goods which the user can order. Also, the ability of the user&#39;s company to service goods or past history with the goods of certain suppliers may be considered in establishing the search terms of the PWF. In this way, alternatives of the requested products could be provided for consideration of the user and products which do not have the employer&#39;s approval for the user could be flagged to indicate managerial approval will be required. In certain cases, outside corporations are hired to provide data processing services for a company in such as a case both SWF and PWF databases  122  and  124  may be present: one database providing a PWF indicating the users preference and the other providing the SWF indicating products being promoted by the service provider. Coordination may be necessary to avoid conflicting purposes.  
         [0039]    Besides the SWF and PWF databases  122  and  124 , the information consolidator has a database  126  for storing full test indexes and product information for the products that turn up in the search. The consolidator  120  also has its own ranking algorithm database  128  containing the raw algorithm with the ranking factors preferred by the consolidator or its user to obtain the raw ranking data.  
         [0040]    As shown in FIGS. 6 and 7, the consolidator  120  performs a database search (step  702 ) through software  600  providing a ranked hit list from each of the sources  102   a  to  102   n  and  114   a  to  114   n . In performing the search, it is determined (step  704 ) whether the PWF factor  124  is involved in the search if it is the search terms are modified (step  706 ) as discussed hereinafter in connection with FIGS. 8 and 9 and the search is performed with the modified search terms otherwise the search is performed with the original search terms (search terms provided by the user) and the search results are obtained from its sources (step  708 ). The consolidator then obtains product information for the N products ranked highest by its sources (step  710 ). The determination of which products from the multiple sources are the Nth highest ranked can be arrived at in a number of ways; for instance, it could on the basis of raw highest ranking of products, it could be by concurrence among the sources or it could be by selection of the highest ranked products from each of the sources. Other selection approaches can also be taken.  
         [0041]    Ranking algorithms of the consolidator are then applied to the products (step  712 ). Again it is determined if the PWF factor is involved (step  714 ). If it is, the PWF factor is added as described hereinafter in connection with FIGS. 8 and 9 (step  716 ). Whether the PWF factor is involved or not, it is determined if the SWF factor is applicable to each of the products (step  718 ) and if it does not conflict with the purposes of the PWF (step  720 ). If the SWF factor is applicable, it is added (step  722 ) as described previously and if there are sufficient choices (step  720 ). The ranking of the products is provided (step  722 ). If there is an insufficient selection of products, additional products are selected (step  724 ) then product information is obtained (step  726 ) and the process of steps  712  to  726  is repeated.  
         [0042]    The products ranked by this process can include those with or without applicable PWF and SWF factors. As shown in FIG. 5, and the application of either or both the PWF and SWF factors may result in the ranking of one or more of the products changing as described previously in connection with the changes in ranking resulting from a SWF being provided to the Thinkpad initially ranked 9th.  
         [0043]    [0043]FIGS. 8 and 9 show reranking based on a user preference weight factor (PWF). The PWF factor enables a user or a controlling agent, such as the users management or parents or their agents, to provide search results relevant to the user. The PWF based solution differs from the SWF based solution because the PWF is not assigned directly to a set of documents like the SWF. Instead, the PWF factor is assigned to particular query terms or to certain parameters or a certain set of parameters can be added to the search query. When a user enters a query term to the search system, the user preference weight factor assigns the PWF to certain key words or adds a certain set of parameters to the search query. The result list is ranked by the search engine using a search engine dependent ranking algorithm. The ranking algorithm usually depends on the frequency and the distribution of the query terms.  
         [0044]    As shown in FIG. 8, if the PWF modules are located in the browser of the user&#39;s machine  100   a  instead of the consolidator&#39;s server the user  800  sends a query to the search service application via the client browser  802 . The client browser has two additional modules: the reranking algorithm module  804  and the user PWF module  806 . When the user types a key word for search, additional key words or parameters that are based on the user PWF are attached to the query by the user PWF module  802 . Additional search parameters will narrow the scope of returned results by limiting the search to the categories, associated with the PWF. For instance, a price limitation could be placed on goods to be ordered by an employee&#39;s manager, the changes could express particular interest to the user, or the terms could limit the range of choices available to children. At the same time, the attached key words will raise the rank of documents that contain the added words in combination with the original user query terms. The query string is then sent to the search engine  808  interrogates the database  808  and obtains a list of results (hits) with their original scores. An entry of this list contains the list of keywords for every document, and the corresponding Url where the document resides. This result (hit) is then forwarded to the ranking module  812  which provides ranked results based on factors described in connection with formulas (1) and (2). The ranked results are provided to the reranking modules  806 .  
         [0045]    The reranking module  804  fetches the search modification factors from the PWF module  806  and reranks hits by using the reranking algorithm and the modification factors generated by the PWF modules  806 . To enable fast reranking (without the need to analyze the document contents) the returned hits should be accompanied with the statistical characteristics, like frequency and distribution of the query terms, that were used by the search engine to calculate the original rank of each hit. These parameters should be returned by a search service application as an integral part of search results. In other words, these parameters should be included in the API of search service applications. The user preference weight factor module consists of the key words and the weight numbers of the key words based on the user input. Based on the user preference and interest, different weight numbers will be assigned. The reranking algorithm applies the weight numbers to the original statistical characteristics for selected key words, and updates ranks of returned hits. The reranking algorithm can take in factors, such as those mentioned in connection with Formula (1), except the factors are those provided by the user not those perceived by a merchant or internet service provider. The reranked search results are then sent to the user for retrieval. FIG. 9 shows the sequencing of the objects shown in FIG. 8.  
         [0046]    Above we have described one embodiment of the invention. Modification of this described embodiment of the invention may be made by those skilled in the art. Therefore the invention is not limited to the described embodiment but includes all variations within the spirit and scope of the claims.