Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
PRICING INTELLIGENCE FOR NON-EXACT MATCHING PRODUCTS
Document Type and Number:
WIPO Patent Application WO/2014/117268
Kind Code:
A1
Abstract:
A computer system-implemented method is provided, including using a process in execution on a processor of a computer system to access, from a database, product description information and pricing information for a product sold by a first retailer. Using a robot module, via an electronic communication network, product description 5 information and pricing information is accessed for a non-exact matching product that is offered for sale by a second retailer. Product matching rules with parameters that are adjustable by product are implemented in a feature analyzer module in execution on the processor of the computer system. In an automated fashion, a determination is made as to whether or not a match exists between the product and the non-exact 10 matching product, to within a predetermined threshold. Upon determining a match to within the predetermined threshold, a data output linking the product and the non-exact matching product is automatically generated, the data output for being accessed by a price comparison process.

Inventors:
PLOUFFE DOMINIC PIERRE (CA)
REED JAMES HAROLD (CA)
KITCHING MATTHEW STEVEN (CA)
Application Number:
PCT/CA2014/050038
Publication Date:
August 07, 2014
Filing Date:
January 21, 2014
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
360PI CORP (CA)
International Classes:
G06Q30/02
Foreign References:
US20110264598A12011-10-27
US20120173472A12012-07-05
US20020107861A12002-08-08
US20020095411A12002-07-18
Attorney, Agent or Firm:
WEIR, Mark et al. (55 Murray Street Suite 23, Ottawa Ontario K1N 5M3, CA)
Download PDF:
Claims:
CLAIMS

What is claimed is:

1. A computer system-implemented method, comprising:

using a process in execution on a processor of a computer system, accessing from a database product description information and pricing information for a product sold by a first retailer;

accessing using a robot module, via an electronic communication network, product description information and pricing information for a non-exact matching product that is offered for sale by a second retailer;

implementing in a feature analyzer module in execution on the processor of the computer system, product matching rules with parameters that are adjustable by product;

accessing implemented product matching rules for the first retailer that cover the product sold by the first retailer, and responsive to the product description information for the product and for the non-exact matching product and said implemented rules, automatically determining whether or not a match exists between the product and the non-exact matching product to within a predetermined threshold; and

upon determining a match to within the predetermined threshold,

automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process.

2. The computer system-implemented method of claim 1 wherein determining whether or not a match exists between the product and the non-exact matching product is other than based on a number of search result hits returned for the nonexact matching product.

3. The computer system-implemented method of claim 1 wherein the non-exact matching product is other than a product that is sponsored for being linked with the product sold by the subject retailer.

4. The computer system-implemented method of any one of claims 1 to 3 wherein determining whether or not a match exists between the product and the non-exact matching product is performed using an artificial intelligence (AI) process that is in execution on the processor of the computer system.

5. The computer system-implemented method of any one of claims 1 to 4 wherein determining whether or not a match exists between the product and the non-exact matching product to within a predetermined threshold comprises excluding products that are an exact match to the product sold by the first retailer.

6. The computer system-implemented method of any one of claims 1 to 5 comprising using the price comparison process, accessing the data output and generating a human-intelligible report including the price of the product compared to the price of the non-exact matching product.

7. The computer system-implemented method of claim 6 wherein the computer system is associated with a price intelligence provider and is remote from the first retailer. 8. The computer system-implemented method of claim 7 wherein the process in execution on the processor of the computer system performs the step of accessing from the database product description information and pricing information for the product sold by the first retailer via the communication network. 9. The computer system-implemented method of any one of claims 1 to 8 wherein the step of accessing product description information and pricing information for the nonexact matching product that is offered for sale by the second retailer comprises extracting data from a product page for the non-exact matching product on an e- commerce site of the second retailer.

10. The computer system-implemented method of any one of claims 1 to 9 wherein the step of accessing product description information and pricing information for the non-exact matching product that is offered for sale by the second retailer comprises retrieving data for the non-exact matching product from a database that is maintained for the second retailer. 11. The computer system-implemented method of any one of claims 1 to 8 comprising building a searchable product index, the searchable product index comprising a plurality of product identifiers, and there being associated with each product identifier an indication of at least one location of product description information and pricing information relating to a product that is identified by said associated product identifier.

12. The computer system-implemented method of claim 11 wherein the searchable product index comprises an index linking features to product identifiers such that the products are searchable based on the extracted feature content.

13. The computer system-implemented method of any one of claims 1 to 12 comprising, in response to determining a match to within the predetermined threshold, automatically generating a data output indicative of a difference between a first feature set relating to the non-exact matching product and a second feature set relating to the product that is sold by the first retailer.

14. The computer system-implemented method of claim 13 comprising determining, using the data output indicative of the difference between the first feature set and the second feature set, a value of a feature that is non-overlapping between the first feature set and the second feature set.

15. The computer system-implemented method of claim 13 comprising determining, using the data output indicative of the difference between the first feature set and the second feature set, a third feature set consisting of a combination of features that is other than available in either one of the product that is sold by the first retailer or the non-exact matching product.

16. The computer system-implemented method of claim 13 comprising automatically generating, based on the data output indicative of the difference between the first feature set and the second feature set, an adjustment to be applied to the price of the product that is sold by the first retailer.

17. The computer system-implemented method of any one of claims 1 to 16 wherein the predetermined threshold is based on a ranked list of features.

18. The computer system-implemented method of any one of claims 1 to 16 wherein features of the product that is sold by the first retailer are grouped into a hierarchical arrangement of feature groups, and wherein the predetermined threshold requires that the non-exact matching product have all of the features of at least the feature group that is at the top of the hierarchical arrangement of feature groups. 19. The computer system-implemented method of any one of claims 1 to 16 wherein, responsive to the product description information for the product and for the nonexact matching product and said implemented rules, a matching-score value is determined based on a comparison of the features of the product and the features of the non-exact matching product, and wherein the predetermined threshold defines a range of matching-score values indicative of a match between the product and the non-exact matching product.

20. A computer system-implemented method, comprising:

using a process in execution on a processor of a computer system, accessing from a database product description information and pricing information for a product sold by a first retailer;

accessing using a robot module, via an electronic communication network, product description information and pricing information for a non-exact matching product that is offered for sale by a second retailer;

establishing a set of rules for determining an approximate match to the product sold by the first retailer; implementing in a feature analyzer module, in execution on the processor of the computer system, the established set of rules;

accessing the implemented set of rules, and responsive to the product description information for the product and for the non-exact matching product and said implemented rules, automatically determining whether or not an approximate match exists between the product and the non-exact matching product; and

upon determining an approximate match, automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process. 21. The computer system-implemented method of claim 20 wherein determining whether or not an approximate match exists between the product and the non-exact matching product is other than based on a number of search result hits retumed for the non-exact matching product. 22. The computer system-implemented method of claim 20 wherein the non-exact matching product is other than a product that is sponsored for being linked with the product sold by the first retailer.

23. The computer system-implemented method of any one of claims 20 to 22 wherein determining whether or not an approximate match exists between the product and the non-exact matching product is performed using an artificial intelligence (AI) process that is in execution on the processor of the computer system.

24. The computer system-implemented method of any one of claims 20 to 23 wherein determining whether or not an approximate match exists between the product and the non-exact matching product comprises excluding products that are an exact match to the product sold by the first retailer.

25. The computer system-implemented method of any one of claims 20 to 24 comprising using the price comparison process, accessing the data output and generating a human-intelligible report including the price of the product compared to the price of the non-exact matching product.

26. The computer system-implemented method of claim 25 wherein the computer system is associated with a price intelligence provider and is remote from the first retailer.

27. The computer system-implemented method of claim 26 wherein the process in execution on the processor of the computer system performs the step of accessing from the database product description information and pricing information for the product sold by the first retailer via the communication network.

28. The computer system-implemented method of any one of claims 20 to 27 wherein the step of accessing product description information and pricing information for the non-exact matching product that is offered for sale by the second retailer comprises extracting data from a product page for the non-exact matching product on an e- commerce site of the second retailer.

29. The computer system-implemented method of any one of claims 20 to 28 wherein the step of accessing product description information and pricing information for the non-exact matching product that is offered for sale by the second retailer comprises retrieving data for the non-exact matching product from a database that is maintained for the second retailer. 30. The computer system-implemented method of any one of claims 20 to 29 comprising building a searchable product index, the searchable product index comprising a plurality of product identifiers, and there being associated with each product identifier an indication of at least one location of product description information and pricing information relating to a product that is identified by said associated product identifier.

31. The computer system-implemented method of claim 30 wherein the product description information comprises a set of features associated with the non-exact matching product, and wherein the searchable product index comprises an index linking features to product identifiers such that products are searchable based on the features that are associated therewith.

32. The computer system-implemented method of any one of claims 20 to 31 comprising, in response to determining an approximate match, automatically generating a data output indicative of a difference between a first feature set relating to the non-exact matching product and a second feature set relating to the product that is sold by the first retailer.

33. The computer system-implemented method of claim 32 comprising determining, using the data output indicative of the difference between the first feature set and the second feature set, a value of a feature that is non-overlapping between the first feature set and the second feature set.

34. The computer system-implemented method of claim 32 comprising determining, using the data output indicative of the difference between the first feature set and the second feature set, a third feature set consisting of a combination of features that is other than available in either one of the product that is sold by the first retailer or the non-exact matching product.

35. The computer system-implemented method of claim 32 comprising automatically generating, based on the data output indicative of the difference between the first feature set and the second feature set, an adjustment to be applied to the price of the product that is sold by the first retailer.

36. The computer system-implemented method of any one of claims 20 to 35 wherein features of the product that is sold by the first retailer are grouped into a hierarchical arrangement of feature groups, and wherein the predetermined threshold requires that the non-exact matching product have all of the features of at least the feature group that is at the top of the hierarchical arrangement of feature groups.

37. The computer system-implemented method of any one of claims 20 to 35 wherein, responsive to the product description information for the product and for the nonexact matching product and said implemented rules, a matching-score value is determined based on a comparison of the features of the product and the features of the non-exact matching product, and wherein the predetermined threshold defines a range of matching-score values indicative of a match between the product and the non-exact matching product.

38. A data processing system, comprising:

a module executing on a processor and accessing from a database available product description information and pricing information for the product sold by the first retailer;

a robot module executing on a processor and accessing, via an electronic communication network, product description information and pricing information for the non-exact matching product that is offered for sale by the second retailer;

a module executing on a processor implementing product matching rules with parameters that are adjustable by product;

a module executing on a processor accessing the implemented product matching rules for the first retailer that cover the product sold by the first retailer, and responsive to the product description information for the product and for the nonexact matching product and said implemented rules, automatically determining whether or not a match exists between the product and the non-exact matching product to within a predetermined threshold; and

a module executing on a processor and responsive to a determination that a match exists between the product and the non-exact matching product to within a predetermined threshold, automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process.

39. The data processing system of claim 38 comprising a module executing on a processor and responsive to the data output generating a human-intelligible report including the price of the product compared to the price of the non-exact matching product.

40. The data processing system of claim 39 wherein the module executing on a processor and accessing from a database available product description information and pricing information for the product sold by the first retailer is executing on a processor of a computer system associated with a price intelligence provider, the computer system that is associated with the price intelligence provider being remote from the first retailer.

41. The data processing system of claim 40 wherein the first retailer, the second retailer and the price intelligence provider are in communication one with another via the electronic communication network.

42. The data processing system of claim 40 wherein the module executing on a processor and responsive to the data output generating a human-intelligible report including the price of the product compared to the price of the non-exact matching product is executing on a processor of a computer system associated with first retailer.

43. The data processing system of claim 38 or 39 wherein each one of the modules is executing on a processor of a computer system associated with a price intelligence provider, the computer system that is associated with the price intelligence provider being remote from the first retailer.

Description:
PRICING INTELLIGENCE FOR NON-EXACT MATCHING PRODUCTS

FIELD OF THE INVENTION

[0001] The invention relates generally to pricing intelligence, and more particularly to an automated method and system for comparing pricing information for non-exact matching products.

BACKGROUND OF THE INVENTION

[0002] A retailer, if they are to attract customers, should provide service, convenience, selection and/or pricing that is superior to that being offered by their competitors. Of course, pricing often winds up being the determining factor when a potential customer is deciding where to make his or her purchase, and this is especially true in the case of on-line retail sales since service, convenience, and selection tend to be more-or-less the same from one on-line retailer to another.

Pricing intelligence has therefore become an important tool in the retail environment, and is being used increasingly by retailers to improve their competitiveness while at the same time maximizing profits. In simple terms, pricing intelligence entails a detailed analysis of pricing information using modem data mining techniques, and is differentiated from other pricing methods by the extent and accuracy of the analysis.

[0003] In order to successfully implement a pricing intelligence method, a subject retailer must have access to reliable and current pricing information, which is for instance obtained from a competitor's e-commerce site and/or from another electronically accessible database. Typically, raw pricing information is obtained in an automated fashion using web-crawlers or web-scrapers. Unfortunately, the acquisition of meaningful pricing information is complicated by a number of factors, such as for instance the need to account for shipping costs in the overall price of a product, the need to purchase multiple items in order to qualify for an advertised discount, or the need to account for the value of "free gifts" that are included with the purchase of a product, etc. Further, some e-commerce sites require products to be placed into a shopping cart before pricing information is provided, or a site may impose limits on the number of requests that can be made. As such, web-crawlers or web-scrapers that are used to obtain pricing information from different e-commerce sites should be able to simulate certain human activities and/or be able to extract data that is presented in different formats. Additionally, the pricing information should be updated or refreshed from time to time in order to account for price changes, or to account for the introduction of new products or the discontinuation of existing products, etc.

[0004] Even after the pricing information has been obtained from a competitor's e- commerce site, comparing this pricing information to the subject retailer's information is complicated by the fact that most e-commerce sites do not put reliable, vendor-independent identifiers on their product pages. For instance, it is relatively uncommon for Universal Product Codes (UPCs) to be included on product pages. Instead, retailers more commonly include stock keeping units (SKUs) or manufacturer model numbers along with a description of the product. Since UPCs are for external or universal use, it would be a relatively simple matter to compare the prices that are advertised by different vendors for products that have the same UPC. On the other hand, SKUs are assigned to a product by each different retailer for stock-keeping purposes and internal operations, and are not particularly useful for inter-vendor product matching or for price comparison applications.

[0005] Comparing the pricing information that is obtained from different vendors e- commerce sites is further complicated due to the common practice of selling identical products under different house brands or private labels. In this scenario, one retailer offers a product for sale under a first brand name and another retailer offers a product with identical features for sale under a second brand name. Aside from different branding and possibly minor cosmetic or styling differences, the products are identical. In a closely related scenario, different retailers may offer different products that have very similar feature sets, e.g. "exclusive models" that are only available from a specific retailer. For instance, a manufacturer provides different modifications of a particular product to different retailers so that each retailer can offer a different exclusive model, and thereby avoid the need to price-match when a similar but non- identical exclusive model is advertised at a lower price. Different exclusive models commonly have one, or sometimes a few, features either more or less than a "standard" model that is produced by the same manufacturer. By way of a specific and non-limiting example, an exclusive model of a 50-inch plasma HDTV that is available from a particular retailer has one additional HDMI input compared to the "standard" HDTV model of the same brand that is available from another retailer. In this case, the manufacturer is likely to use different model numbers for the standard HDTV model and for the exclusive HDTV model, and similarly each retailer is likely to use a different SKU.

[0006] Of course, matching engines are known for performing apples-to-apples type matches of products that are found on a competitor's e-commerce site. For instance, artificial intelligence, semantic analysis, data mining, and image recognition technologies can be combined to determine exact product matches even when a unique product identifier, such as a UPC, is not provided on the product page. Such matching engines are also capable of recognizing size and color variants of a product. That said, the matched products are identical models with identical features sets and identical brands. As noted above, different retailers often do not offer for sale identical products.

[0007] Of course, pricing intelligence results that are based on exact product matches do provide the subject retailer with valuable insight into their marketplace, and will allow the subject retailer to make important pricing decisions. That being said, a price conscious consumer may be willing to consider an alternative product that is not available from the subject retailer. For instance, a consumer who wishes to purchase a 50-inch HDTV may be willing to consider similarly featured products under the Sony ® , Samsung ® and LG ® brands. Further, the consumer may consider products that are based on LED-LCD or CCFL-LCD technology. According to this scenario, implementation of a prior art pricing intelligence method based on an apple-to-apple type product match may result in the subject retailer adjusting the price of a Sony 50- inch LED-LCD HDTV in order to be price competitive with the identical Sony ® 50- inch LED-LCD HDTV that is offered by a competitor. However, if the competitor also offers a Samsung ® 50-inch LED-LCD HDTV, or even a LG ® 50-inch CCFL- LCD HDTV, at a lower price than the Sony 50-inch LED-LCD HDTV, then the consumer is likely to choose to purchase either the Samsung ® HDTV or the LG ® HDTV from the competitor and the subject retailer will lose the sale. Clearly, apple- to-apple type product matches do not provide the subject retailer with a full and robust pricing intelligence solution.

[0008] Additionally, even if an apple-to-apple type product match is considered to be sufficient for the purposes of the subject retailer, competitors may deliberately foil attempts to employ pricing intelligence methods. For instance, the product page on a competitor's e-commerce site may display the same image for several similar products of the same brand to confound image recognition, may provide a partial or abbreviated feature set description for some products to confound feature-based mapping, or may use non-standard terms to define features also to confound feature- based mapping. Under such circumstances, it is highly unlikely that an automated matching engine will be able to determine even apple-to-apple type product matches with acceptable accuracy, much less determine matches between similar but non- identical products. [0009] On the other hand, it is also known to employ a small army of trained analysts to perform attribute mapping in a manual fashion. Optionally, an automated filtering process provides a list of likely or possible matches that are to be evaluated by a human analyst. Alternatively, the attribute mapping process is entirely manual and requires one or more human analysts to navigate to each competitor's e- commerce site and review the product description for all of the products that are similar to those offered by the subject retailer. Advantageously, manual attribute mapping provides highly accurate data for use with pricing intelligence methods and is capable of matching similar products, matching house brands or private labels, etc. Further, human analysts are able to determine product matches even when product information is deliberately vague or misleading. Unfortunately, manual attribute mapping is very labor intensive and therefore it is very expensive to perform. Further, it is necessary to periodically update the initial attribute matching in order to account for the introduction of new product models, the discontinuation of old product models, etc. Such updates require considerable additional effort on the part of the human analysts, and are also very expensive to perform. Further, it may be necessary for the subject retailer to spend time and effort reviewing results that are produced by the human analysts and confirm the proposed matches. Such methods based on manual attribute matching are therefore not only very expensive, but also

inconvenient.

[0010] It would be beneficial to provide a method and system that overcome at least some of the above-mentioned limitations and disadvantages of the prior art.

SUMMARY OF THE INVENTION

[0011] According to an aspect of at least one embodiment of the invention, there is provided a computer system-implemented method, comprising: using a process in execution on a processor of a computer system, accessing from a database product description information and pricing information for a product sold by a first retailer; accessing using a robot module, via an electronic communication network, product description information and pricing information for a non-exact matching product that is offered for sale by a second retailer; implementing in a feature analyzer module in execution on the processor of the computer system, product matching rules with parameters that are adjustable by product; accessing implemented product matching rules for the first retailer that cover the product sold by the first retailer, and responsive to the product description information for the product and for the nonexact matching product and said implemented rules, automatically determining whether or not a match exists between the product and the non-exact matching product to within a predetermined threshold; and upon determining a match to within the predetermined threshold, automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process.

[0012] According to an aspect of at least one embodiment of the invention, there is provided a computer system-implemented method, comprising: using a process in execution on a processor of a computer system, accessing from a database product description information and pricing information for a product sold by a first retailer; accessing using a robot module, via an electronic communication network, product description information and pricing information for a non-exact matching product that is offered for sale by a second retailer; establishing a set of rules for determining an approximate match to the product sold by the first retailer; implementing in a feature analyzer module, in execution on the processor of the computer system, the established set of rules; accessing the implemented set of rules, and responsive to the product description information for the product and for the non-exact matching product and said implemented rules, automatically determining whether or not an approximate match exists between the product and the non-exact matching product; and upon determining an approximate match, automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process.

[0013] According to an aspect of at least one embodiment of the invention, there is provided a data processing system, comprising: a module executing on a processor and accessing from a database available product description information and pricing information for the product sold by the first retailer; a robot module executing on a processor and accessing, via an electronic communication network, product description information and pricing information for the non-exact matching product that is offered for sale by the second retailer; a module executing on a processor implementing product matching rules with parameters that are adjustable by product; a module executing on a processor accessing the implemented product matching rules for the first retailer that cover the product sold by the first retailer, and responsive to the product description information for the product and for the non-exact matching product and said implemented rules, automatically determining whether or not a match exists between the product and the non-exact matching product to within a predetermined threshold; and a module executing on a processor and responsive to a determination that a match exists between the product and the non-exact matching product to within a predetermined threshold, automatically generating a data output linking the product and the non-exact matching product, the data output for being accessed by a price comparison process. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] The invention will now be described by way of example only, and with reference to the attached drawings, wherein similar reference numerals denote similar elements throughout the several views, and in which: [0015] Figure 1 is a simplified diagram showing a system according to an embodiment of the instant invention.

[0016] Figure 2 is a simplified diagram showing data fields for a product on an e- commerce site.

[0017] Figure 3 is a simplified diagram showing a table comparing the attributes for a product with the extracted attributes for a non-exact matching product.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

[0018] The following description is presented to enable a person skilled in the art to make and use the invention, and is provided in the context of a particular application and its requirements. Various modifications to the disclosed embodiments will be readily apparent to those skilled in the art, and the general principles defined herein may be applied to other embodiments and applications without departing from the scope of the invention. Thus, the present invention is not intended to be limited to the embodiments disclosed, but is to be accorded the widest scope consistent with the principles and features disclosed herein. [0019] In order for two products to be considered "non-exact matching" products, the two products must have overlapping but non-identical feature sets. That is to say, some features must be present in the feature set of both of the two products, the so- called "overlapping features," and some features must be absent from the feature set of one of the two products, the so-called "non-overlapping features." Equivalent brand-specific features, which are identified using different proprietary terms, being present in the feature set of the respective branded products is not, in and of itself, considered to result in non-identical feature sets. Rather, in order to be non-exact matching one of the products must have a feature that gives rise to functionality that is absent in the other product. For example, different product models that are produced by the same manufacturer are considered to be "non-exact matching" products only if one product model has a feature that the other product model does not have. By way of a specific and non-limiting example, so-called "exclusive models" of a product that are available only at specific retailers are non-exact matches to the standard version of that product if the feature sets are non-identical. Similarly, fully featured models and entry level models of a product are considered to be non-exact matching products. Further, products that are produced by different manufacturers under different brands, and that are sold by plural retailers under those brands, are also considered to be "non- exact matching" products only if the product that is produced by one manufacturer does not have a feature that is present in the product that is produced by the other manufacturer. In other words, the brand of each of the two products is not considered to be a feature for the purpose of determining non-exact matches; rather, in this context two products with identical feature sets that differ only by brand are considered to be exact-matching products. A consumer having no interest in any of the non-overlapping features would consider two "non-exact matching" products to be perfectly interchangeable, without regard to brand, and therefore may consider both products when making a purchase decision. As such, it is in a subject retailer's best interest to include non-exact matching products when performing pricing intelligence analysis.

[0020] According to an embodiment, a data processing system based on an artificial intelligence (AI) process is used to perform non-exact product matching. Product description information and pricing information for a product that is sold by a subject retailer is accessed from a memory storage element having stored thereon a database of such information. For instance, the product description information for a particular product includes a manufacturer model number and/or another product identifier code for that product, as well as a list of features or attributes associated with that product.

[0021] A robot module, such as for instance a so-called "web crawler" or "spider," is used to access product description information and pricing information for a non- exact matching product that is offered for sale by a competitor. In practice, the robot module accesses a plurality of product pages on the competitor's e-commerce site and/or retrieves data from another electronically accessible database. Some of the accessed product pages and/or some of retrieved data may relate to products that are not similar, within a predetermined threshold, to any product that is offered by the subject retailer. Further, some of the accessed product pages and/or some of retrieved data may relate to products that are only an exact match to products that are offered by the subject retailer. On the other hand, some of the accessed product pages and/or some of retrieved data may relate to products that are only a non-exact match to products that are offered by the subject retailer, or to products that are an exact match to some products that are offered by the subject retailer as well as a non-exact match to other products that are offered by the subject retailer. In the latter case, for example, a competitor offers a television that is an exact match to a television that is offered by the subject retailer in terms of brand and features. In addition, the television that is offered by the competitor is also similar to another model of the same brand or to at least one model of a different brand offered by the subject retailer. [0022] Determining if two products are non-matching, exact-matching or non-exact matching to within a predetermined threshold is based on product matching rules, with parameters that are adjustable by product, implemented in a feature analyzer module that is in execution on a processor of the data processing system. This module uses an AI process that is capable of learning how to determine matches between two products that are not identical one to the other. Further, the AI process is capable of learning how a particular subject retailer defines "non-exact matching." For instance, over time the AI process is capable of learning that a first retailer considers two televisions to be non-exact matching products if they have identical display technology, identical screen size, identical resolution, and identical audio output power. Similarly, over time the AI process is capable of learning that a second retailer considers two televisions to be non-exact matches if they have identical screen size, identical resolution, and the same number of HDMI inputs. In this way, different retailers may define differently how the non-exact matching is to be determined, such as for instance based on the specific features that each retailer considers to be most important. [0023] In order for the AI system to learn how to recognize non-exact matching products, the subject retailer may provide initial parameters of the product matching rules for each different product or each different group of products. Alternatively, default initial values are used. In an embodiment, a user interface presents the subject retailer with available parameters for each product or group of products and the subject retailer selects and/or enters values for different parameters via the interface. For instance, the parameters are presented in a checklist format via a display device of a computer system. The AI process performs product matching for the subject retailer based on the initial parameters. In particular, the AI process determines a set of features for a given product that is offered by the subject retailer. The set of features is defined, for instance, by the subject retailer and includes the features that the subject retailer considers to be important. Optionally, the set of features includes a plurality of sub-sets of features in a hierarchical ranking. For example, three feature sub-sets are defined and the closeness of the non-exact match depends on how many of the sub-sets of features are common to two products. If both products have all three feature sub-sets in common then the non-exact match is considered to be a close match. If both products have only the top two highest ranked feature sub-sets in common then the non-exact match is considered to be less close. Of course, the minimum requirement is that both products have the top ranked feature sub-set in common; otherwise the two products are considered to be non-matching products.

[0024] Significantly, the AI process determines whether or not a match exists between the two products, to within a predetermined threshold, based on a comparison of the features that are present in each of the two products. According to an embodiment, the subject retailer provides initial values for the different parameters of the matching rule, and the AI process learns how to determine matches between two products based on an analysis of all of the features that are available for the relevant class of products. Alternatively, default or null values are used initially. Optionally, the AI process generates a list of possible matches for a product that is offered by the subject retailer, including products that are believed to be close matches, products that are considered to be less close matches, and products that are considered to be non-matching. The subject retailer reviews the products that are contained in each section of the list, and confirms the assignment of products on a product-by-product basis. The subject retailer may indicate, for instance, that some of the products considered to be non-matching are actually close matches or less close matches, or that some of the products that are considered to be close matches are actually less close matches or non-matches, etc. Based on an analysis of the features that are present in the products that were initially mischaracterized, as well as the features that are present in the products that were initially correctly characterized, the AI system adjusts the parameters of the matching rule. When this process is iterated over time, as new products are introduced or old products are discontinued, the AI process continues to learn the attributes or features that are important for correctly determining non-exact matches between products. Further, since in at least some embodiments the AI process learns based on feedback that is provided by the subject retailer, the same AI process is capable of learning each different retailer's definition of what constitutes a non-exact match. Of course, the length of time that is required for the AI process to learn how to determine non-exact matches between products depends, partially, on the type of products that are being compared. Products with large feature or attribute sets, such as for instance automobiles or HDTVs, require longer learning periods than products with small feature sets, such as for instance coffee mugs or staplers. Additionally, the quality and consistency of the feedback that is provided by the subject retailer affects the length of time that it takes for the AI process to learn how to determine non-exact matches between products.

[0025] Upon determining a non-exact match, to within a predetermined threshold, between a product that is offered by the subject retailer and a product that is offered by a competitor, a data output linking the product and the non-exact matching product is generated. The data output is for being accessed by a price comparison process at a later time, or optionally a price comparison is performed based on the data output and a result of the price comparison is presented in a human-intelligible form.

[0026] The predetermined threshold for determining a match between a product and a non-exact matching product may be defined in a variety of different ways. In generally, products that are determined to be exact matching products are excluded. According to one implementation, a matching-score value is determined based on a comparison of the features of the product and the features of the non-exact matching product. In this implementation the predetermined threshold defines a range of matching-score values that is indicative of a match between the product and the nonexact matching product. As such, matching scores that are outside of this range are considered to be indicative of either exact matching products or non-matching products. According to another implementation, in which the features of the product that is sold by the subject retailer are grouped into a hierarchical arrangement of feature groups, the predetermined threshold defines which of the feature groups must be present in the non-exact matching product. For instance, the predetermined threshold may require the non-exact matching product to have all of the features of at least the feature group that is at the top of the hierarchical arrangement of feature groups in order to be considered a match with the product.

[0027] When a match is determined between a product and a non-exact matching product, to within a predetermined threshold, optionally a data output is generated that is indicative of a difference between a first feature set relating to the non-exact matching product and a second feature set relating to the product that is sold by the subject retailer. Based on this data output, for instance, a value of a feature that is non-overlapping between the first feature set and the second feature set may be determined. Further, statistical analysis may be used to compare the pricing information and features of a plurality of different non-exact matching products, which have different but similar combinations of features, to determine values for a plurality of different features. Feature value information is useful for pricing non- identical products. Further, the feature value information may be used to identify which features should be added to a product feature set or removed from a product feature set in order to provide an optimized feature set that increases profit on a per unit basis. In some instances, an existing product with the optimized feature set may be available from a manufacturer, and the subject retailer may make arrangements to carry that product. In other instances, the subject retailer may approach a

manufacturer and ask for an exclusive model that has the optimized feature set.

Additionally, based on the data output indicative of the difference between the first feature set and the second feature set, an adjustment to be applied to the price of the product that is sold by the subject retailer may be generated.

[0028] Referring now to Figure 1, shown is a system 100 according to an embodiment of the instant invention. A subject retailer 102, a competitor 104 and a pricing intelligence provider 106 are in communication one with another via a communications network such as for instance wide area network (WAN) 108. The subject retailer 102 has an e-commerce site 110 in communication with a memory storage device 112 having stored thereon a database including at least inventory data 114 relating to products that are offered by the subject retailer. The inventory data 114 includes pricing information as well as descriptions for each of the products that are offered by the subject retailer. Similarly, the competitor 104 has an e-commerce site 116 in communication with a memory storage device 118 having stored thereon a database including at least inventory data 120 relating to products that are offered by the competitor. The inventory data 120 includes pricing information as well as descriptions for each of the products that are offered. The pricing intelligence provider 106 includes a data processing system 122 for comparing the price of a product sold by the subject retailer 102 to the price a non-exact matching product that is offered for sale by another retailer, such as for instance the competitor 104. The data processing system 122 is in communication with a memory storage device 124 having stored thereon parameter data 126 and other data that is required during use of the data processing system 122.

[0029] Referring now to Fig. 2, shown is a simplified diagram of a competitor's product page 200 for a product. The product page 200 contains information relating to the product, such as for instance a photograph or another visual representation 202 of the product, the price 204 of the product, a description 206 of the product including an indication of features or attributes of the product, and optionally other information 208 relating to delivery terms, offer conditions, other limitations etc. A robot module, such as for instance a WebCrawler or spider, of the data processing system 122 extracts the data 202-208 from the product page 200. Referring now to Figure 3, shown is a simplified comparison of the attributes or features of a product that is offered by the subject retailer 102 compared to the features that are believed to be present in the product that is represented by the product page 200, based on the data 202-208 extracted from the product page 200. In this example, the product that is offered by the subject retailer 202 has attributes i-v. Based on the data 202-208 extracted from the product page 200, the competitor's product is believed to have attributes i, ii and v; attribute iii is not present in this product and attribute iv may be present in this product. The data processing system 122 of the pricing intelligence provider 106 implements product matching rules with parameters that are adjustable by product. Based on the implemented product matching rules and the attributes for the subject retailer's product and the competitor's product, a determination is made whether or not a match exists to within a predetermined threshold. For instance, if the parameters of the matching rule specify that a non-exact matching product must have all of the attributes i-v, then in this example the two products are not non-exact matching products. On the other hand, if the parameters of the matching rule specify that a non-exact matching product must have attributes i, ii and v, then in this example the two products are non-exact matching products. These non-exact matching products may be further classified as close matching products or less close matching products based on parameters iii and iv, etc. When it is determined that a match occurs, to within a predetermined threshold, then a data output linking the product and the non-exact matching product is generated automatically. The data output is for being accessed by a price comparison process, which is in execution on a processor of the pricing intelligence provider 106. Optionally, the pricing intelligence provider generates the data output for being accessed by a price comparison process that is in execution on another processor, such as for instance a processor of the subject retailer 102. [0030] The ability to automatically match a product and a non-exact matching product supports a number of enhanced functions, such as for instance i) determining the value of individual features or groups of features, ii) determining price adjustments to be competitive with non-identical products, iii) identifying desirable attributes that together are not available, iv) assessing the assignment of products to a specific taxonomy, etc. [0031] Since matches are determined between a product and a non-exact matching product, it is possible to determine differences between the two products in terms of the type and/or quantity of features that are offered. For instance, it may be determined that for $50 more than the subject retailer is charging for a particular HDTV, the competitor is offering a similar HDTV with one additional HDMI input. Based on a larger number of similar comparisons, it may be possible to determine an approximate value of a feature. That is to say, using statistical methods etc. may reveal that an approximately $45-$55 value is associated with the HDMI input.

Similarly, the value of other features may also be determined in this way. [0032] Determining matches between non-exact matching products also facilitates determining price adjustments. It may be the case that the subject retailer is competitively priced relative to the price that other retailers are charging for the same product. Unfortunately, if similar but non-exact matching products are offered by other retailers at a better price point then the subject retailer may suffer poor sales. By ensuring price competitiveness with non-exact matching products in addition to exact matching products, the subject retailer is likely to increase the number of sales. Of course, if it is necessary to reduce the price of the product below a point of being profitable, then the subject retailer may instead discontinue selling the product and instead offer a product that may be priced more competitively with the non-exact matching products.

[0033] Statistical analysis may also be employed to identify features that are present in some products but not in others, and to further analyze the available groupings of features to identify if particularly desirable groupings of features are available. That is to say, once a particularly desirable grouping of features is identified, the subject retailer may attempt to determine if there are any products on the market that offer that particularly desirable grouping of features. If such a product is available, then the subject retailer may attempt to acquire the right to offer the product. Alternatively, the subject retailer may approach a manufacturer to request an exclusive model having the particularly desirable grouping of features if such a grouping is not currently available on the market. [0034] Additionally, determining matches between non-exact matching products may facilitate an assessing the taxonomy to which a product is assigned. For instance, a HDTV offered by the subject retailer and classified as a consumer electronic product may be found to be a non-exact match to a competitors HDTV with at least and additional feature and classified as a business display product. If the business display product taxonomy allows the subject retailer to charge a premium price on the price for the same product, then the subject retailer may assign the HDTV to the business display taxonomy.

[0035] While the above description constitutes a plurality of embodiments of the present invention, it will be appreciated that the present invention is susceptible to further modification and change without departing from the fair meaning of the accompanying claims.