Method and apparatus for automated selection, organization, and recommendation of items
First Claim
1. A computer-implemented method for recommending recipes catered to a particular user'"'"'s preferences, the method comprising:
- creating a user preference vector having a plurality of fields, each field corresponding to a chemical component contained in food;
obtaining a user preference for a particular type of dish;
analyzing the chemical components contained in the dish;
assigning values to the fields of the user preference vector corresponding to the chemical components contained in the dish, the values being based on an amount of each chemical component present in the dish;
retrieving a recipe from a menu recommendation database;
comparing the recipe with the user preference vector; and
selecting the recipe as a recommended recipe.
3 Assignments
0 Petitions
Accused Products
Abstract
An automated recommendation system keeps track of the needs and preferences of the user through a user preference vector. Each field of the user preference vector represents the user'"'"'s preference for a specific item attribute. Item attributes are defined by a systems programmer. The systems programmer also creates product vectors of items in the recommendation database. A user preference vector is compared against a product vector to determine if the product is suitable for recommendation. A recommended item may be purchased by the user by submitting a purchase request over a network connection. The user preference vector is constantly refined through feedback from the user about the recommended items.
640 Citations
37 Claims
-
1. A computer-implemented method for recommending recipes catered to a particular user'"'"'s preferences, the method comprising:
-
creating a user preference vector having a plurality of fields, each field corresponding to a chemical component contained in food;
obtaining a user preference for a particular type of dish;
analyzing the chemical components contained in the dish;
assigning values to the fields of the user preference vector corresponding to the chemical components contained in the dish, the values being based on an amount of each chemical component present in the dish;
retrieving a recipe from a menu recommendation database;
comparing the recipe with the user preference vector; and
selecting the recipe as a recommended recipe. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
parsing the recipe for ingredients contained in the recipe;
searching for the ingredients in a chemical database;
retrieving chemical components found in each of the ingredients; and
assigning values to the fields of the recipe vector corresponding to the retrieved chemical components, the values being based on a total amount of each retrieved chemical component.
-
-
5. The method of claim 1 further comprising:
-
obtaining user feedback about the recommended recipe; and
modifying the value of at least one of the fields of the user preference vector based on the user feedback.
-
-
6. The method of claim 5, wherein the obtaining user feedback further comprises obtaining a user rating for the recommended recipe, and the modifying the value further comprises:
-
analyzing the chemical components contained in the recipe;
locating the fields of the user preference vector corresponding to the chemical components contained in the recipe; and
changing the values of the retrieved fields, the change of value being proportional to the rating provided by the user.
-
-
7. The method of claim 1, wherein each field is assigned a weight, the weight being dependent on contributions of the chemical composition corresponding to each field to the food'"'"'s taste or attribute.
-
8. The method of claim 1 further comprising:
-
maintaining a list of products offered by a particular vendor in a retailer inventory database;
parsing the recommend recipe for specific ingredients;
searching the retailer inventory database for the specific ingredients; and
inserting matching products offered by the particular vendor into a shopping list.
-
-
9. The method of claim 1, wherein each recipe in the recipe database is associated with a time factor, and the method further comprises analyzing the time factor associated with the retrieved recipe.
-
10. In a computer for recommending recipes catered to a particular user'"'"'s preference, each recipe being represented by a recipe vector having a plurality of fields, each field corresponding to a chemical component contained in food, a method for creating the recipe vector for a particular recipe comprising:
-
maintaining a chemical database storing a list ingredients and chemical components found in each of the ingredients;
parsing the particular recipe for ingredients contained in the particular recipe;
searching for the parsed ingredients in the chemical database;
retrieving the chemical components found in each of the parsed ingredients; and
assigning values to the fields of the recipe vector corresponding to the retrieved chemical components, the values being based on a total amount of each retrieved chemical component, the recipe vector being used for comparing against a user preference vector for determining whether the particular recipe may be recommended to the user. - View Dependent Claims (11, 12, 13)
creating an ingredient vector for each of the parsed ingredients, the ingredient vector having a plurality of fields, the fields of the ingredient vector corresponding to the fields of the recipe vector; and
assigning values to the fields of the ingredient vector, the values being based on an amount of each retrieved chemical component found in the parsed ingredient.
-
-
13. The method of claim 12, wherein the assigning values comprises assigning values based on a vector addition of all the ingredient vectors.
-
14. A computer system for recommending recipes catered to a particular user'"'"'s preferences, the system comprising:
-
means for creating a user preference vector having a plurality of fields, each field corresponding to a chemical component contained in food;
means for obtaining user preference for a particular type of dish;
means for analyzing the chemical components contained in the dish;
means for assigning values to the fields of the user preference vector corresponding to the chemical components contained in the dish;
means for storing recipes for being recommended to the user; and
means for comparing the recipes with the user preference vector;
means for selecting one or more recipes as a recommended recipe. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21)
means for parsing the recipe for ingredients contained in the recipe;
means for searching for the ingredients in a chemical database;
means for retrieving chemical components found in each of the ingredients; and
means for assigning values to the fields of the recipe vector corresponding to the retrieved chemical components.
-
-
17. The system of claim 14 further comprising:
-
means for obtaining user feedback about the recommended recipe; and
means for modifying the value of at least one of the fields of the user preference vector based on the user feedback.
-
-
18. The system of claim 17, wherein the means for obtaining user feedback further comprises means for obtaining a user rating for the recommended recipe, and the means for modifying the value further comprises:
-
means for analyzing the chemical components contained in the recipe;
means for locating the fields of the user preference vector corresponding to the chemical components contained in the recipe; and
means for changing the values of the retrieved fields.
-
-
19. The system of claim 14 further comprising means for assigning a weight to each field, the weight being dependent on contributions of the chemical composition corresponding to each field to the food'"'"'s taste or attribute.
-
20. The system of claim 14 further comprising:
-
means for maintaining a list of products offered by a particular vendor;
means for parsing the recommend recipe for specific ingredients;
means for searching for the specific ingredients; and
means for inserting matching products offered by the particular vendor into a shopping list.
-
-
21. The system of claim 14 further comprising means for analyzing a time factor associated with the retrieved recipe.
-
22. computer system for creating a recipe vector for recommending a recipe catered to a particular user'"'"'s preferences, the recipe vector having a plurality of fields, each field corresponding to a chemical component contained in food, the system comprising:
-
means for storing a list of ingredients and chemical components found in each of the ingredients;
means for obtaining ingredients contained in the particular recipe;
means for searching for the obtained ingredients in the chemical database;
means for retrieving the chemical components found in each of the obtained ingredients; and
means for assigning values to the fields of the recipe vector corresponding the retrieved chemical components the recipe vector being used for comparing against a user preference vector for determining whether the particular recipe may be recommended to the user. - View Dependent Claims (23, 24)
means for creating an ingredient vector for each of the obtained ingredients, the ingredient vector having a plurality of fields, the fields of the ingredient vector corresponding to the fields of the recipe vector; and
means for assigning values to the fields of the ingredient vector.
-
-
25. A computer system adapted to recommend recipes catered to a particular user'"'"'s preferences, the system comprising:
-
a processor; and
a memory coupled to the processor and having program instructions stored therein, the processor being operable to execute the program instructions, the program instructions including;
creating a user preference vector having a plurality of fields, each field corresponding to a chemical component contained in food;
obtaining a user preference for a particular type of dish;
analyzing the chemical components contained in the dish;
assigning values to the fields of the user preference vector corresponding to the chemical components contained in the dish, the values being based on an amount of each chemical component present in the dish;
retrieving a recipe from a menu recommendation database;
comparing the recipe with the user preference vector; and
selecting the recipe as a recommended recipe. - View Dependent Claims (26, 27, 28, 29, 30, 31, 32, 33)
parsing the recipe for ingredients contained in the recipe;
searching for the ingredients in a chemical database;
retrieving chemical components found in each of the ingredients; and
assigning values to the fields of the recipe vector corresponding to the retrieved chemical components, the values being based on a total amount of each retrieved chemical component.
-
-
29. The computer system of claim 25, wherein the program instructions further include:
-
obtaining user feedback about the recommended recipe; and
modifying the value of at least one of the fields of the user preference vector based on the user feedback.
-
-
30. The computer system of claim 29, wherein the obtaining user feedback further comprises obtaining a user rating for the recommended recipe, and the modifying the value further comprises:
-
analyzing the chemical components contained in the recipe;
locating the fields of the user preference vector corresponding to the chemical components contained in the recipe; and
changing the values of the retrieved fields, the change of value being proportional to the rating provided by the user.
-
-
31. The computer system of claim 25, wherein each field is assigned a weight, the weight being dependent on contributions of the chemical composition corresponding to each field to the food'"'"'s taste or attribute.
-
32. The computer system of claim 25, wherein the program instructions further include:
-
maintaining a list of products offered by a particular vendor in a retailer inventory database;
parsing the recommend recipe for specific ingredients;
searching the retailer inventory database for the specific ingredients; and
inserting matching products offered by the particular vendor into a shopping list.
-
-
33. The computer system of claim 25, wherein each recipe in the recipe database is associated with a time factor, and the method further comprises analyzing the time factor associated with the retrieved recipe.
-
34. A computer system for creating a recipe vector for recommending a recipe catered to a particular user'"'"'s preferences, the recipe vector having a plurality of fields, each field corresponding to a chemical component contained in food, the system comprising:
-
a memory storing a chemical database including a list of ingredients and chemical components found in each of the ingredients, the memory having program instructions stored therein; and
a processor coupled to the memory, the processor being operable to execute the program instructions, the program instructions including;
parsing the particular recipe for ingredients contained in the particular recipe;
searching for the parsed ingredients in the chemical database;
retrieving the chemical components found in each of the parsed ingredients; and
assigning values to the fields of the recipe vector corresponding to the retrieved chemical components, the values being based on a total amount of each retrieved chemical component, the recipe vector being used for comparing against a user preference vector determining whether the particular recipe may be recommended to the user. - View Dependent Claims (35, 36, 37)
creating an ingredient vector for each of the parsed ingredients, the ingredient vector having a plurality of fields, the fields of the ingredient vector corresponding to the fields of the recipe vector; and
assigning values to the fields of the ingredient vector, the values being based on an amount of each retrieved chemical component found in the parsed ingredient.
-
-
37. The computer system of claim 36, wherein the assigning values comprises assigning values based on a vector addition of all the ingredient vectors.
Specification