← Back to Patent Explorer
US6236985B1 Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for searching databases with applications such as peer groups, collaborative filtering, and e-commerce

Assignee: International Business Machines Corp
•
Filing: 1998-10-07
•
Granted: 2001-05-22
•
Expires: 2018-10-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method of analyzing information in the form of a plurality of data records. Each data record includes one or more data values. The data values are partitioned into a plurality of data signatures. Data values of data signatures are compared to data values of data records. Based on the result of the comparison an index is associated with each data record. A bound corresponding to the index is calculated based on a user defined target value and an objective function. If desired, information may be analyzed for finding peer groups in e-commerce applications.

Inventors

  • 👤 Charu Chandra Aggarwal
  • 👤 Joel Leonard Wolf
  • 👤 Philip Shi-lung Yu

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-27 19:25
CPC Classifications
G; G06; G06Q; G06Q40/00; G06Q40/04; G06F; G06F16/00; G06F16/20; G06F16/22; G06F16/2228; G06F16/2237; Y; Y10; Y10S; Y10S707/00; Y10S707/99931; Y10S707/99932; Y10S707/99933; Y10S707/99936

Claims Analysis

Total Claims: 36
Claim 1
Independent Claim 103 words
A method of analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 2
Independent Claim 103 words
A method of analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 3
Dependent Claim 22 words
The method according to claim 1 , wherein the objective function is a function of a match number and a hamming distance.
Claim 4
Dependent Claim 14 words
The method according to claim 1 , wherein the index is a Boolean index.
Claim 5
Dependent Claim 65 words
The method according to claim 1 , wherein the step of partitioning the plurality of data values, further comprises the steps of: calculating a distance between a first data value of the plurality of data values and a second data value of the plurality of data values; and detecting a plurality of clusters of ones of the plurality of data values based on the distance.
Claim 6
Dependent Claim 55 words
The method according to claim 1 , wherein steps (b)-(c) are repeated until each respective data record of the plurality of data records is associated with a respective index of a plurality of indices, and step (d) is repeated until a respective bound corresponding to each respective index of the plurality of indices is calculated.
Claim 7
Dependent Claim 70 words
The method according to claim 5 , further comprising the steps of: (a) sorting respective ones of the plurality of indices based on the respective bound; (b) searching ones of the plurality of data records based on sorted ones of the plurality of indices; and (c) detecting at least one of the plurality of data records that is comparable to the user defined target value based on the objective function.
Claim 8
Independent Claim 109 words
A method of analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 9
Independent Claim 109 words
A method of analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 10
Dependent Claim 14 words
The method according to claim 7 , wherein the index is a Boolean index.
Claim 11
Dependent Claim 59 words
The method according to claim 7 , further comprising the steps of: (e) repeating steps (b)-(c) until each respective data record of the plurality of data records is associated with a respective index of a plurality of indices; and (f) repeating step (d) until a respective bound corresponding to each respective index of the plurality of indices is calculated.
Claim 12
Dependent Claim 76 words
The method according to claim 9 , further comprising the steps of: (g) sorting respective ones of the plurality of indices based on the respective bound; (h) searching ones of the plurality of data records based on sorted ones of the plurality of indices; and (i) detecting at least one of the plurality of data records that is comparable to at least one of the plurality of user defined target values based on the objective function.
Claim 13
Dependent Claim 16 words
The method according to claim 10 , wherein the objective function is chosen by the user.
Claim 14
Dependent Claim 26 words
The method according to claim 10 , wherein each of the plurality of data records is obtained by measuring physical attributes of a plurality of objects.
Claim 15
Dependent Claim 38 words
The method according to claim 10 , wherein an interactively defined number L of the plurality of data records that are comparable to m user defined target values of the plurality of user defined target values are detected.
Claim 16
Dependent Claim 68 words
The method according to claim 13 , wherein the plurality of data values represent a plurality of items for sale, the plurality of data records are a plurality of transaction records associated with a plurality of customers, and the L data records detected are L transaction records of the plurality of transaction records, the L transaction records comprising a peer group of the m user defined target values.
Claim 17
Dependent Claim 49 words
The method according to claim 14 , wherein ones of the plurality of items for sale are provided to a customer based on an intersection between a promotion list and ones of the plurality of items for sale of ones of the L transaction records of the peer group.
Claim 18
Dependent Claim 121 words
The method according to claim 15 , further comprising the steps of: (j) comparing a total number of the ones of the plurality of items for sale provided to the customer with a given value r; (k) repeating steps (h)-(i) to detect L′<L transaction records comprising the peer group of the m user defined target values, if the total number of the ones of the plurality of items for sale provided to the customer is greater than r; and (l) repeating steps (h)-(i) to detect L′>L transaction records comprising the peer group of the m user defined target values, if the total number of the ones of the plurality of items for sale provided to the customer is smaller than r.
Claim 19
Dependent Claim 17 words
The method according to claim 10 , wherein the objective function is interactively specified by a user.
Claim 20
Dependent Claim 20 words
The method according to claim 17 , wherein the objective function is interactively specified for each repetition of steps (d)-(i).
Claim 21
Dependent Claim 135 words
An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 22
Dependent Claim 135 words
An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 23
Dependent Claim 141 words
An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 24
Dependent Claim 141 words
An article of manufacture comprising a computer usable medium having computer readable program code means embodied therein for analyzing information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said article of manufacture comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 25
Dependent Claim 81 words
An article of manufacture as recited in claim 20 , the computer readable program code means in said article of manufacture further comprising computer readable program code means for causing a computer to effect: (e) repeating steps (b)-(c) until each respective data record of the plurality of data records is associated with a respective index of a plurality of indices; and (f) repeating step (d) until a respective bound corresponding to each respective index of the plurality of indices is calculated.
Claim 26
Dependent Claim 98 words
An article of manufacture as recited in claim 21 , the computer readable program code means in said article of manufacture further comprising computer readable program code means for causing a computer to effect: (g) sorting respective ones of the plurality of indices based on the respective bound; (h) searching ones of the plurality of data records based on sorted ones of the plurality of indices; and (i) detecting at least one of the plurality of data records that is comparable to at least one of the plurality of user defined target values based on the objective function.
Claim 27
Dependent Claim 41 words
An article of manufacture as recited in claim 22 , wherein an interactively defined number L of the plurality of data records that are comparable to m user defined target values of the plurality of user defined target values are detected.
Claim 28
Dependent Claim 71 words
An article of manufacture as recited in claim 23 , wherein the plurality of data values represent a plurality of items for sale, the plurality of data records are a plurality of transaction records associated with a plurality of customers, and the L data records detected are L transaction records of the plurality of transaction records, the L transaction records comprising a peer group of the m user defined target values.
Claim 29
Dependent Claim 138 words
A computer program product comprising a computer usable medium having computer readable program code means embodied therein for causing an analysis of information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said computer program product comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 30
Dependent Claim 138 words
A computer program product comprising a computer usable medium having computer readable program code means embodied therein for causing an analysis of information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said computer program product comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on a user defined target value and an objective function.
Claim 31
Dependent Claim 144 words
A computer program product comprising a computer usable medium having computer readable program code means embodied therein for causing an analysis of information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said computer program product comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 32
Dependent Claim 144 words
A computer program product comprising a computer usable medium having computer readable program code means embodied therein for causing an analysis of information in the form of a plurality of data records, each data record including at least one data value of a plurality of data values, the computer readable program code means in said computer program product comprising computer readable program code means for causing a computer to effect: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); and (d) calculating a bound corresponding to the index and based on at least one of a plurality of user defined target values and an objective function.
Claim 33
Independent Claim 219 words
A method of searching a computer database for at least one of a plurality of data records that is comparable to a user defined target value, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); (d) calculating a bound corresponding to the index and based on the user defined target value and an objective function; (e) repeating steps (b)-(c) until each respective data record of the plurality of data records is associated with a respective index of a plurality of indices; (f) repeating step (d) until a respective bound corresponding to each respective index of the plurality of indices is calculated; (g) sorting respective ones of the plurality of indices based on the respective bound; (h) searching ones of the plurality of data records based on sorted ones of the plurality of indices; and (i) detecting said at least one of the plurality of data records that is comparable to the user defined target value based on the objective function.
Claim 34
Independent Claim 219 words
A method of searching a computer database for at least one of a plurality of data records that is comparable to a user defined target value, each data record including at least one data value of a plurality of data values, said method comprising the steps of: (a) partitioning the plurality of data values into a plurality of data signatures; (b) comparing ones of the plurality of data signatures to a data record of the plurality of data records; (c) associating an index with the data record based on the result of step (b); (d) calculating a bound corresponding to the index and based on the user defined target value and an objective function; (e) repeating steps (b)-(c) until each respective data record of the plurality of data records is associated with a respective index of a plurality of indices; (f) repeating step (d) until a respective bound corresponding to each respective index of the plurality of indices is calculated; (g) sorting respective ones of the plurality of indices based on the respective bound; (h) searching ones of the plurality of data records based on sorted ones of the plurality of indices; and (i) detecting said at least one of the plurality of data records that is comparable to the user defined target value based on the objective function.
Claim 35
Dependent Claim 36 words
A method of searching a computer database according to claim 27 , wherein the plurality of data records are stored on a server computer, and the user defined target value is provided by a client computer.
Claim 36
Dependent Claim 42 words
The method of searching a computer database of claim 28 , wherein the plurality of data records which are stored on the server computer and said at least one data value included in each data record are collected from the client computer.

References Cited (Backward Citations)

US5845276A Cited
US6049861A Cited
US6026398A Cited
US6148295A Cited
US6012058A Cited
US6049797A Cited
US6061658A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2004-05-21 2004-11-20 2005-05-22 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2008-05-21 2008-11-20 2009-05-22 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2012-05-21 2012-11-20 2013-05-22 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag