METHOD AND APPARATUS FOR ALLOWING USERS TO AUGMENT SEARCHES
Embodiment of the invention relate to a computer-implemented method for providing augmented searches for entities to a user, the method comprising obtaining, at a server computer operated by an entity search system, user data related to a user, and obtaining entity data related to a plurality of entities. Then, the entity search system receives a query for a search for relevant entities from the user. The method then further comprises searching for a set of relevant entities based on the query, entity data, and user data, determining a set of criteria for an initial order of relevance, and determining an order of relevance of the set of relevant entities based on the set of criteria. The set of relevant entities or order of relevance may be augmented by obtaining feedback data from the user, thereby providing an augmented search for relevant entities to the user.
1 . A computer-implemented method for providing searches for entities to a primary user, the method comprising:
Obtaining user data related to a plurality of users relevant to the primary user;
storing the user data at the server computer;
obtaining entity data from a plurality of data sources, wherein the entity data is associated with an entity in a plurality of entities
storing the entity data, wherein the entity data associated with the plurality of entities is stored in an entity database;
receiving a query for a search for relevant entities;
searching for a set of relevant entities relevant to the primary user from the plurality of entities based on the query, entity data, and user data;
determining a set of criteria for an initial order of relevance, wherein the initial order of relevance is an order in which the set of relevant entities are to be communicated to the primary user;
determining the initial order of relevance of the set of relevant entities based on the set of criteria;
communicating to the primary user, on a user device, the set of relevant entities in the initial order of relevance to the primary user;
obtaining, via the user device, feedback data from the user related to the search for the set of relevant entities;
augmenting the search for the set of relevant entities, thereby updating the set of relevant entities, based on the feedback data; and
communicating, via the user device, the updated set of relevant entities to the primary user, thereby providing an augmented search for relevant entities to the primary user.
2 . The computer-implemented method of claim 1 , further comprising:
obtaining, via the user device, feedback data from the user related to the initial order of relevance for the set of relevant entities;
augmenting the initial order of relevance for the set of relevant entities, thereby creating an adjusted order of relevance for the set of relevant entities based on the feedback data; and
communicating, via the user device, the set of relevant entities to the primary user based on the adjusted order of relevance.
3 . The computer-implemented method of claim 1 , further comprising:
assigning a corresponding weight of each criteria in the set of criteria;
determining the initial order of relevance of the set of relevant entities based on the weight of each criteria in the set of criteria;
obtaining, via the user device, feedback data from the user related to the corresponding weight of each criteria in the set of criteria;
augmenting the initial order of relevance for the set of relevant entities, thereby creating an adjusted order of relevance for the set of relevant entities, based on the feedback data related to the corresponding weight of each criteria in the set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the adjusted order of relevance.
4 . The computer-implemented method of claim 1 , wherein the set of criteria includes one or more filters applied to entity data related to the plurality of entities.
5 . The computer-implemented method of claim 4 , wherein the one or more filters are applied either alone or in combination based on a corresponding weight assigned to each filter.
6 . The computer-implemented method of claim 3 , wherein one or more criteria in the set of criteria related to the query is implicitly determined, and is stored in a database.
7 . The computer-implemented method of claim 3 , wherein one or more criteria in the set of criteria related to the query is determined in real-time, by the server computer, based on the query.
8 . The computer-implemented method of claim 7 , wherein one or more criteria in the set of criteria related to the query is based on feedback data from the primary user.
9 . The computer-implemented method of claim 3 , wherein the one or more criteria includes geographic location, distance radius around the geographic location, or current location data.
10 . The computer-implemented method of claim 9 , wherein the current location data is obtained via the user device.
11 . The computer-implemented method of claim 3 , wherein the one or more criteria includes one or more attributes of entity data related to the plurality of entities, wherein the attribute includes cuisine, price, type, or environment.
12 . The computer-implemented method of claim 1 , wherein communicating the set of relevant entities may be numerical, textual, pictorial, auditory, tactile, either alone or in combination.
13 . The computer-implemented method of claim 1 , wherein the query meets a search relaxation criterion, the method further comprises:
ignoring one or more criteria in the set of criteria, thereby creating a reduced set of criteria;
determining a set of relevant entities based on the reduced set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the reduced set of criteria.
14 . The computer-implemented method of claim 1 , further comprising:
determining an error in the query;
correcting the error in the query, thereby creating a corrected set of criteria;
determining a set of relevant entities based on the corrected set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the corrected set of criteria.
15 . The computer-implemented method of claim 3 , further comprising:
broadening one or more criteria in the set of criteria, thereby creating a broadened set of criteria;
determining a set of relevant entities based on the broadened set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the broadened set of criteria.
16 . The computer-implemented method of claim 1 , wherein the entity provides goods or services to the target user.
17 . The computer-implemented method of claim 13 , wherein ignoring one or more criteria to create a reduce set of criteria is based on the corresponding weight of each criteria.
18 . The computer-implemented method of claim 13 , wherein ignoring one or more criteria to create the reduced set of criteria is based on a previous user response to each criteria.
19 . A computer-implemented method for providing searches for entities to a primary user, the method comprising:
receiving a query for a search for relevant entities;
searching, at a server computer, for a set of relevant entities relevant to the primary user from the plurality of entities based on the query, entity data, and user data;
receiving location data from the primary user;
automatically determining a relevant distance from the location data of the primary user;
determining a set of criteria for an initial order of relevance, wherein the initial order of relevance is an order in which the set of relevant entities are to be communicated to the primary user;
determining the initial order of relevance of the set of relevant entities based on the set of criteria and the relevant distance;
communicating to the primary user, on a user device, the set of relevant entities in the initial order of relevance to the primary user;
obtaining, via the user device, feedback data from the user related to the search for the set of relevant entities;
augmenting the search for the set of relevant entities, thereby updating the set of relevant entities, based on the feedback data; and
communicating, via the user device, the updated set of relevant entities to the primary user, thereby providing an augmented search for relevant entities to the primary user.
20 . A server computer comprising a processor and a non-transitory computer readable medium, the non-transitory computer readable medium comprising code executable by the processor to implement a method for providing searches for entities to a primary user, the method comprising:
obtaining, at the server computer, user data related to a plurality of users relevant to the primary user;
storing the user data at the server computer;
obtaining, at the server computer, entity data from a plurality of data sources, wherein the entity data is associated with an entity in a plurality of entities
storing the entity data, wherein the entity data associated with the plurality of entities is stored in an entity database;
receiving a query for a search for relevant entities;
searching, at the server computer, for a set of relevant entities relevant to the primary user from the plurality of entities based on the query, entity data, and user data;
determining a set of criteria for an initial order of relevance, wherein the initial order of relevance is an order in which the set of relevant entities are to be communicated to the primary user;
determining the initial order of relevance of the set of relevant entities based on the set of criteria;
communicating to the primary user, on a user device, the set of relevant entities in the initial order of relevance to the primary user;
obtaining, via the user device, feedback data from the user related to the search for the set of relevant entities;
augmenting the search for the set of relevant entities, thereby updating the set of relevant entities, based on the feedback data; and
communicating, via the user device, the updated set of relevant entities to the primary user, thereby providing an augmented search for relevant entities to the primary user.
21 . The computer-implemented method of claim 20 , further comprising:
obtaining, via the user device, feedback data from the user related to the initial order of relevance for the set of relevant entities;
augmenting the initial order of relevance for the set of relevant entities, thereby creating an adjusted order of relevance for the set of relevant entities based on the feedback data; and
communicating, via the user device, the set of relevant entities to the primary user based on the adjusted order of relevance.
22 . The computer-implemented method of claim 20 , further comprising:
assigning a corresponding weight of each criteria in the set of criteria;
determining the initial order of relevance of the set of relevant entities based on the weight of each criteria in the set of criteria;
obtaining, via the user device, feedback data from the user related to the corresponding weight of each criteria in the set of criteria;
augmenting the initial order of relevance for the set of relevant entities, thereby creating an adjusted order of relevance for the set of relevant entities, based on the feedback data related to the corresponding weight of each criteria in the set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the adjusted order of relevance.
23 . The computer-implemented method of claim 20 , wherein the set of criteria includes one or more filters applied to entity data related to the plurality of entities.
24 . The computer-implemented method of claim 23 , wherein the one or more filters are applied either alone or in combination based on a corresponding weight assigned to each filter.
25 . The computer-implemented method of claim 22 , wherein one or more criteria in the set of criteria related to the query is implicitly determined, and is stored in a database.
26 . The computer-implemented method of claim 22 , wherein one or more criteria in the set of criteria related to the query is determined in real-time, by the server computer, based on the query.
27 . The computer-implemented method of claim 26 , wherein one or more criteria in the set of criteria related to the query is based on feedback data from the primary user.
28 . The computer-implemented method of claim 22 , wherein the one or more criteria includes geographic location, distance radius around the geographic location, or current location data.
29 . The computer-implemented method of claim 28 , wherein the current location data is obtained via the user device.
30 . The computer-implemented method of claim 22 , wherein the one or more criteria includes one or more attributes of entity data related to the plurality of entities, wherein the attribute includes cuisine, price, type, or environment.
31 . The computer-implemented method of claim 20 , wherein communicating the set of relevant entities may be numerical, textual, pictorial, auditory, tactile, either alone or in combination.
32 . The computer-implemented method of claim 20 , wherein the query meets a search relaxation criterion, the method further comprises:
ignoring one or more criteria in the set of criteria, thereby creating a reduced set of criteria;
determining a set of relevant entities based on the reduced set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the reduced set of criteria.
33 . The computer-implemented method of claim 20 , further comprising:
determining an error in the query;
correcting the error in the query, thereby creating a corrected set of criteria;
determining a set of relevant entities based on the corrected set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the corrected set of criteria.
34 . The computer-implemented method of claim 22 , further comprising:
broadening one or more criteria in the set of criteria, thereby creating a broadened set of criteria;
determining a set of relevant entities based on the broadened set of criteria and the corresponding weight of each criteria in the reduced set of criteria; and
communicating, via the user device, the set of relevant entities to the primary user based on the broadened set of criteria.
35 . The computer-implemented method of claim 20 , wherein the entity provides goods or services to the target user.
36 . The computer-implemented method of claim 32 , wherein ignoring one or more criteria to create a reduce set of criteria is based on the corresponding weight of each criteria.
37 . The computer-implemented method of claim 32 , wherein ignoring one or more criteria to create the reduced set of criteria is based on a previous user response to each criteria.
38 . A computer-implemented method for providing searches for entities to a primary user, the method comprising:
receiving a query for a search for relevant entities;
searching, at a server computer, for a set of relevant entities relevant to the primary user from the plurality of entities based on the query, entity data, and user data;
receiving location data from the primary user;
automatically determining a relevant distance from the location data of the primary user;
determining a set of criteria for an initial order of relevance, wherein the initial order of relevance is an order in which the set of relevant entities are to be communicated to the primary user;
determining the initial order of relevance of the set of relevant entities based on the set of criteria and the relevant distance;
communicating to the primary user, on a user device, the set of relevant entities in the initial order of relevance to the primary user;
obtaining, via the user device, feedback data from the user related to the search for the set of relevant entities;
augmenting the search for the set of relevant entities, thereby updating the set of relevant entities, based on the feedback data; and
communicating, via the user device, the updated set of relevant entities to the primary user, thereby providing an augmented search for relevant entities to the primary user.