System and method for determining competitors of a restaurant
First Claim
Patent Images
1. A method of determining competitors for a first restaurant within a database of restaurants, wherein each restaurant in the database has a location, two or more cuisine types, an order history, and a menu comprising a plurality of menu items, the method operating within a computer and comprising:
- i) executing a database query for retrieving a plurality of restaurants from the database over a network interface wherein the network interface is coupled to a processor of the computer;
ii) filtering, by the processor, the plurality of restaurants to produce a first set of restaurants within a radius of the location of the first restaurant;
assigning a distance value to each restaurant in the first set of restaurants, each distance value for each restaurant being linearly interpolated based on a distance between the first restaurant and a corresponding restaurant from the first set of restaurants, and assigned a distance score that is proportional to the distance;
iii) filtering, by the processor, the first set of restaurants to produce a second set of restaurants with a similar cuisine as the first restaurant by calculating a cuisine type match score for each subject restaurant of the plurality of restaurants as a number of matching cuisine types of the first restaurant and each other restaurant divided by a total number of cuisine types of the subject restaurant;
iv) comparing, by the processor, the menu items of the first restaurant to the menu items of each of the restaurants within the second set of restaurants to produce a set of menu scores for the second set of restaurants by;
producing in a database, by the processor, a field storing a true item name for each menu item offered by the first restaurant and the second set of regardless of a menu title given by a restaurant, and associated with each menu item, and using the field of each menu item to produce the set of menu scores for the second set of restaurants regardless of the menu title given by the restaurant including assigning a numeric value to each of the menu items based on similarity to menu types and calculating a match score of menu items of the first restaurant to the menu items of each of the restaurants of the second set of restaurants by multiplying the numeric values of those menu items;
v) comparing, by the processor, an order history of the first restaurant with an order history of each of the restaurants within the second set of restaurants to produce a set of order history scores for the second set of restaurants, wherein each order history includes a plurality of orders wherein each order in the plurality of orders records at least a cost of the order, and by calculating a first mean value of orders of a subsection of the first restaurant'"'"'s order history and second mean values of orders of a subsection of each of the restaurants of the second set of restaurants;
assigning a value of 1 to each restaurant of the second set of restaurants having an average order size within 2 standard deviations of the first mean value of the first restaurant; and
scaling the second mean values of orders based upon differences in comparison to the first mean value;
vi) computing competitor scores for the second set of restaurants as a sum of weighted average scores from the set of menu scores and the set of order history scores, the menu scores having first weight factors greater than second weight factors of the order history scores; and
vii) based on the competitor scores, filtering, by the processor, the second set of restaurants to produce a first set of competitors restaurants;
the computer presenting only the first set of competitor restaurants.
3 Assignments
0 Petitions
Accused Products
Abstract
A utility for determining the competitors of a subject restaurant accesses a database that contains information about other, nearby restaurants. The utility assigns a competitor score to each restaurant within the maximum radius based on the distance from the subject restaurant, as well as the cuisine types, menus, and order histories of the subject and competitor restaurants.
13 Citations
9 Claims
-
1. A method of determining competitors for a first restaurant within a database of restaurants, wherein each restaurant in the database has a location, two or more cuisine types, an order history, and a menu comprising a plurality of menu items, the method operating within a computer and comprising:
-
i) executing a database query for retrieving a plurality of restaurants from the database over a network interface wherein the network interface is coupled to a processor of the computer; ii) filtering, by the processor, the plurality of restaurants to produce a first set of restaurants within a radius of the location of the first restaurant;
assigning a distance value to each restaurant in the first set of restaurants, each distance value for each restaurant being linearly interpolated based on a distance between the first restaurant and a corresponding restaurant from the first set of restaurants, and assigned a distance score that is proportional to the distance;iii) filtering, by the processor, the first set of restaurants to produce a second set of restaurants with a similar cuisine as the first restaurant by calculating a cuisine type match score for each subject restaurant of the plurality of restaurants as a number of matching cuisine types of the first restaurant and each other restaurant divided by a total number of cuisine types of the subject restaurant; iv) comparing, by the processor, the menu items of the first restaurant to the menu items of each of the restaurants within the second set of restaurants to produce a set of menu scores for the second set of restaurants by;
producing in a database, by the processor, a field storing a true item name for each menu item offered by the first restaurant and the second set of regardless of a menu title given by a restaurant, and associated with each menu item, and using the field of each menu item to produce the set of menu scores for the second set of restaurants regardless of the menu title given by the restaurant including assigning a numeric value to each of the menu items based on similarity to menu types and calculating a match score of menu items of the first restaurant to the menu items of each of the restaurants of the second set of restaurants by multiplying the numeric values of those menu items;v) comparing, by the processor, an order history of the first restaurant with an order history of each of the restaurants within the second set of restaurants to produce a set of order history scores for the second set of restaurants, wherein each order history includes a plurality of orders wherein each order in the plurality of orders records at least a cost of the order, and by calculating a first mean value of orders of a subsection of the first restaurant'"'"'s order history and second mean values of orders of a subsection of each of the restaurants of the second set of restaurants;
assigning a value of 1 to each restaurant of the second set of restaurants having an average order size within 2 standard deviations of the first mean value of the first restaurant; and
scaling the second mean values of orders based upon differences in comparison to the first mean value;vi) computing competitor scores for the second set of restaurants as a sum of weighted average scores from the set of menu scores and the set of order history scores, the menu scores having first weight factors greater than second weight factors of the order history scores; and vii) based on the competitor scores, filtering, by the processor, the second set of restaurants to produce a first set of competitors restaurants; the computer presenting only the first set of competitor restaurants. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
Specification