IP Library Granted Patent US 9,213,744
Granted Patent B2
US 9,213,744 · App. 13/840,031 · Granted Dec 15, 2015

Perturbing search results

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,213,744
App. No.
13/840,031
Granted
Dec 15, 2015
Kind
B2
Abstract

Disclosed here are methods, systems, paradigms and structures for spreading the interest of a user evenly over a predefined set of search results. A search engine retrieves search results from a database and perturbs at least a portion of the search results, that is, randomizes the order of the portion before presenting it to the user. In this way, even when a search is repeated between database update cycles, the user would see different top search results every time the search is executed. The perturbation technique can be applied to a search in a social networking system which searches for users. The perturbation can be done by randomizing the display order of the sear results based on a most recent activity time of the user. The perturbed search results will have different users every time the user performs a search. The perturbed search results are customized per user.

Claims (52)

1. A method comprising:

receiving, at a server in a computer system and from a first user, a query to perform a search for user-interested information comprising a plurality of member profiles of a social networking system, the plurality of member profiles excluding member profiles that have a direct connection to the first user, the query including query parameters;

obtaining, at the server and in response to the query, a plurality of search results based on the query parameters, the search results including the user-interested information;

perturbing, at the server, at least a portion of the search results based on a perturbation criterion to generate a first set of perturbed search results; and

serving, by the server, the first set of perturbed search results to the first user.

2. The method of claim 1 , wherein obtaining the plurality of search results includes:

obtaining the plurality of member profiles based on the query parameters, the plurality of member profiles grouped into a plurality of goodness levels, wherein each goodness level is indicative of a degree of match between a particular member profile and the query parameters.

3. The method of claim 2 ,

wherein a group of member profiles corresponding to a particular goodness level is sorted by a most recent activity time of each member profile associated with the group of member profiles, wherein an active member profile with the most recent activity time is presented first in the search results.

4. The method of claim 3 , wherein the perturbation criterion includes time.

5. The method of claim 4 , wherein said perturbing the at least portion of the search results based on the most recent activity time of each of the member profiles.

6. The method of claim 4 , wherein said perturbing includes:

identifying a subset of the plurality of member profiles where the most recent activity time is a predefined time period;

modifying the most recent activity time of each of the subset of member profiles based on a random function to generate a new activity time; and

sorting the subset of member profiles based on the new activity time.

7. The method of claim 6 , wherein new activity time of each of the member profiles is within the predefined time period from the last login-time of a first member in the first set of perturbed search results.

8. The method of claim 6 , wherein identifying the subset of the plurality of member profiles includes identifying member profiles associated with members from a group with a predefined goodness level.

9. The method of claim 6 , wherein identifying the subset of the member profiles includes setting the predefined time period to a time period that includes member profiles from the search results having a relevancy to the search query above a predefined relevancy threshold.

10. The method of claim 6 further comprising:

append, at the server, remaining portion of the search results that is not perturbed to the first set of perturbed search results.

11. The method of claim 1 further comprising:

storing the search results and the first set of perturbed search results in a cache of the computer system.

12. The method of claim 1 further comprising:

receiving, at the server, the query from a second user;

perturbing, at the server, the at least portion of the search results based on a perturbation criterion to generate a second set of perturbed search results, wherein the second set of perturbed search results is different from the first set of perturbed search results; and

serving, by the server, the second set of perturbed search results to the second user.

13. The method of claim 1 , wherein, for a given query with given query parameters and a given search results, the first set of perturbed search results is distinct for at least one of (a) each of a plurality of users executing the given query or (b) each instance of executing the query by a given user of the users.

14. A method comprising:

receiving, at a server in a computer system, a query to perform a search for user-interested information, the query including query parameters;

obtaining, at the server and in response to the query, a plurality of search results from a database based on the query parameters, the plurality of search results including the user-interested information;

determining, at the server, whether the query is received within a predefined duration from a time the query was executed previously;

responsive to a determination that the query is received within the predefined duration from the time the query was executed previously,

perturbing, at the server, at least a portion of the plurality of search results based on a perturbation criterion to generate perturbed search results; and

serving, by the server, the perturbed search results.

15. The method of claim 14 , wherein the predefined duration corresponds to a frequency at which the database is updated with new user-interested information.

16. The method of claim 14 , wherein receiving a query to perform a search for user-interested information includes receiving the query to perform the search for a plurality of members of a social networking system.

17. The method of claim 14 , wherein perturbing the at least portion of the search results based on time includes perturbing the at least portion of the search results based on a most recent activity time of each of the members.

18. A system comprising:

a processor;

a receiver unit working in cooperation with the processor to receive a query to perform a search for user-interested information, the query including query parameters;

a search unit working in cooperation with the processor to obtain, in response to the query and from a database, a plurality of search results based on the query parameters, the plurality of search results including the user-interested information;

a perturbation determination unit working in cooperation with the processor to determine whether the query is received within a predefined duration from a time the query was executed previously;

a search result perturbation unit working in cooperation with the processor to perturb, responsive to a determination that the query is received within a predefined duration from the time the query was executed previously, at least a portion of the plurality of search results based on a perturbation criterion to generate perturbed search results; and

a search result transmission unit working in cooperation with the processor to serve the perturbed search results to a client device.

19. The system of claim 18 further comprising:

a cache to store the search results and the perturbed search results.

20. A method comprising:

receiving, at a server in a computer system and from a first user and a second user, a query to perform a search for user-interested information comprising a plurality of member profiles of a social networking system excluding member profiles which have a direct connection to the first user or second user, the query including query parameters;

obtaining, at the server and in response to the query, a plurality of search results based on the query parameters, the search results including the user-interested information;

perturbing, at the server, at least a portion of the search results based on a perturbation criterion to generate a first set of perturbed search results for the first user and a second set of perturbed search results for the second user, the first set of perturbed search results being different from the second set of perturbed search results; and

serving, by the server, the first set of perturbed search results to the first user and the second set of perturbed search results to the second user.

21. The method of claim 20 , wherein perturbing the search results include perturbing the search results for the first user based on a first perturbation criterion and perturbing the search results for the second user based on a second perturbation criterion.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Sep 11, 2020
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: IFWE INC.
Reel/Frame 053741/0080 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYANCE TYPE PREVIOUSLY RECORDED AT REEL: 053700 FRAME: 0163. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 8, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053718/0453 →
SECURITY INTEREST Recorded Sep 4, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053700/0163 →
RELEASE OF SECURITY INTEREST Recorded Sep 4, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053700/0192 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Aug 29, 2019
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: THE MEET GROUP, INC.
Reel/Frame 050234/0505 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Aug 29, 2019
From: IFWE INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 050234/0486 →
SECURITY INTEREST Recorded Sep 28, 2017
From: THE MEET GROUP, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044050/0569 →
CHANGE OF NAME Recorded Oct 16, 2014
From: TAGGED, INC.
To: IFWE INC.
Reel/Frame 034010/0414 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2013
From: IRWIN, JOHN
To: TAGGED, INC.
Reel/Frame 030323/0282 →