IP Library Granted Patent US 9,230,032
Granted Patent B2
US 9,230,032 · App. 14/789,115 · Granted Jan 5, 2016

Poll-based networking system

Inventors: Timothy Beggy (Pittsburgh, PA); David Shaun Neal (Tuxedo, NY)
Assignee: TRINITY INTEL MEDIA, LLC
G06F17/30867G06F17/30G06F17/30424G06F17/30554H04L65/403H04L67/306H04L29/06H04L29/08
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,230,032
App. No.
14/789,115
Granted
Jan 5, 2016
Kind
B2
Abstract

Described is a poll-based networking system. The system provides an on-line network of friends that are determined through polling each of the users. This system polls a user with a variety of questions. After providing an answer to each question, the system compares, in real-time, the current user's responses with all other users' responses to identify those users that most similarly answered the questions to that of the current user. As the current user progressively answers additional questions, the system progressively updates the matching and presentation of similar users. As such, as the current user navigates the website by answering polling questions, the selected answers are compared against the selected answers of other users to generate a likelihood of match between the user and each of the other users. The user profiles of other users that have a likelihood of match within a predetermined threshold are then presented.

Claims (91)

1. A poll-based networking system, comprising:

a data processing system having one or more processors and a memory, the memory being specifically encoded with instructions such that when executed, the instructions cause the one or more processors to perform operations of:

receiving user information from a user to generate a unique user profile for the user;

providing the user a first polling question, the first polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the first polling question;

comparing the selected answer against the selected answers of other users, based on the unique identification, to generate a likelihood of match between the user and each of the other users;

causing to be displayed to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

wherein the likelihood of match is generated by performing operations of:

collecting the selected answers with a web server and storing the selected answers in a database;

upon receipt of a selected answer, separately transmitting the selected answer from the web server, through a match aggregator, to a plurality of match servers, each match server being assigned a distinct subset of the other users, such that each match server compares the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and each of the users in its distinct subset;

receiving in the match aggregator, from each match server, a likelihood of match between the user and the users in the distinct subset;

compiling the likelihood of matches from the plurality of match servers to generate the likelihood of match between the user and each of the other users; and

transmitting the likelihood of match between the user and each of the other users to the web server.

2. The poll-based networking system as set forth in claim 1 , wherein the one or more processors are further configured to perform operations of:

providing the user with a next polling question, the next polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the next polling question;

cumulatively comparing the selected answer for the first polling question and the next polling question against the selected answers of other users to generate a likelihood of match between the user and each of the other users;

displaying to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

repeating the process for a plurality of next polling questions.

3. The poll-based networking system as set forth in claim 2 , wherein in cumulatively comparing, the one or more processors are further configured to perform operations of:

matching the user to other users based upon all of the selected answers by the user and all of the selected answers by the other users, such that all of the selected answers by the user are compared to all of the selected answers of all of the other users; and

generating a likelihood of match between the user and each of the other users as a match percentage.

4. The poll-based networking system as set forth in claim 3 , wherein in generating a likelihood of match between the user and each of the other users as a match percentage, the one or more processors are further configured to perform operations of:

determining a total number of polling questions as taken by the user and a selected other user;

determining a number of same selected answers between the user and the selected other user; and

dividing the number of same selected answers by the total number of polling questions to generate the match percentage between the user and the selected other user.

5. The poll-based networking system as set forth in claim 4 , wherein the one or more processors is further configured to perform operations of:

receiving match commands to identify users that fall within a maximum and minimum match percentage between the user and other users; and

displaying to the user a maximum number of members that fall within the maximum and minimum match percentage.

6. The poll-based networking system as set forth in claim 5 , wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

7. The poll-based networking system as set forth in claim 1 , wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

8. A computer-implemented method for creating a poll-based network, the method comprising an act of causing a computer having one or more processors and a memory specifically encoded with computer executable instruction means to execute the instruction means to cause the one or more processors to perform operations of:

receiving user information from a user to generate a unique user profile for the user;

providing the user a first polling question, the first polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the first polling question;

comparing the selected answer against the selected answers of other users, based on the unique identification, to generate a likelihood of match between the user and each of the other users;

causing to be displayed to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

wherein the likelihood of match is generated by performing operations of:

collecting the selected answers with a web server and storing the selected answers in a database;

upon receipt of a selected answer, separately transmitting the selected answer from the web server, through a match aggregator, to a plurality of match servers, each match server being assigned a distinct subset of the other users, such that each match server compares the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and each of the users in its distinct subset;

receiving in the match aggregator, from each match server, a likelihood of match between the user and the users in the distinct subset;

compiling the likelihood of matches from the plurality of match servers to generate the likelihood of match between the user and each of the other users; and

transmitting the likelihood of match between the user and each of the other users to the web server.

9. The computer implemented method as set forth in claim 8 , further comprising operations of:

providing the user with a next polling question, the next polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the next polling question;

cumulatively comparing the selected answer for the first polling question and the next polling question against the selected answers of other users to generate a likelihood of match between the user and each of the other users;

displaying to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

repeating the process for a plurality of next polling questions.

10. The computer implemented method as set forth in claim 9 , wherein in cumulatively comparing, further comprising an act of causing the one or more processors to perform operations of:

matching the user to other users based upon all of the selected answers by the user and all of the selected answers by the other users, such that all of the selected answers by the user are compared to all of the selected answers of all of the other users; and

generating a likelihood of match between the user and each of the other users as a match percentage.

11. The computer implemented method as set forth in claim 10 , wherein in generating a likelihood of match between the user and each of the other users as a match percentage, further comprising an act of causing the one or more processors to perform operations of:

determining a total number of polling questions as taken by the user and a selected other user;

determining a number of same selected answers between the user and the selected other user; and

dividing the number of same selected answers by the total number of polling questions to generate the match percentage between the user and the selected other user.

12. The computer implemented method as set forth in claim 11 , further comprising an act of causing the one or more processors to perform operations of:

receiving match commands to identify users that fall within a maximum and minimum match percentage between the user and other users; and

displaying to the user a maximum number of members that fall within the maximum and minimum match percentage.

13. The computer implemented method as set forth in claim 12 , wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

14. The computer implemented method as set forth in claim 8 , wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

15. A computer program product for creating a poll-based network, the computer program product comprising computer-readable instruction means stored on a non-transitory computer-readable medium that are executable by a computer for causing the computer to perform operations of:

receiving user information from a user to generate a unique user profile for the user;

providing the user a first polling question, the first polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the first polling question;

comparing the selected answer against the selected answers of other users, based on the unique identification, to generate a likelihood of match between the user and each of the other users;

causing to be displayed to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

wherein the likelihood of match is generated by performing operations of:

collecting the selected answers with a web server and storing the selected answers in a database;

upon receipt of a selected answer, separately transmitting the selected answer from the web server, through a match aggregator, to a plurality of match servers, each match server being assigned a distinct subset of the other users, such that each match server compares the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and each of the users in its distinct subset;

receiving in the match aggregator, from each match server, a likelihood of match between the user and the users in the distinct subset;

compiling the likelihood of matches from the plurality of match servers to generate the likelihood of match between the user and each of the other users; and

transmitting the likelihood of match between the user and each of the other users to the web server.

16. The computer program product as set forth in claim 15 , further comprising instruction means for causing the computer to perform operations of:

providing the user with a next polling question, the next polling question having a finite set of answers and a unique identification;

receiving and storing a selected answer for the next polling question;

cumulatively comparing the selected answer for the first polling question and the next polling question against the selected answers of other users to generate a likelihood of match between the user and each of the other users;

displaying to the user the user profiles of other users that have a likelihood of match within a predetermined threshold; and

repeating the process for a plurality of next polling questions.

17. The computer program product as set forth in claim 16 , further comprising instruction means for causing the computer to perform operations of:

matching the user to other users based upon all of the selected answers by the user and all of the selected answers by the other users, such that all of the selected answers by the user are compared to all of the selected answers of all of the other users; and

generating a likelihood of match between the user and each of the other users as a match percentage.

18. The computer program product as set forth in claim 17 , further comprising instruction means for causing the computer to perform operations of:

determining a total number of polling questions as taken by the user and a selected other user;

determining a number of same selected answers between the user and the selected other user; and

dividing the number of same selected answers by the total number of polling questions to generate the match percentage between the user and the selected other user.

19. The computer program product as set forth in claim 18 , further comprising instruction means for causing the computer to perform operations of:

receiving match commands to identify users that fall within a maximum and minimum match percentage between the user and other users; and

displaying to the user a maximum number of members that fall within the maximum and minimum match percentage; and

wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

20. The computer program product as set forth in claim 15 , wherein in comparing the selected answer of the user against the selected answers of the users in its distinct subset to generate a likelihood of match between the user and the users in its distinct subset, each match server is further configured to store selected answers as an in memory, two-dimensional array, with n bytes per selected answer and m rows per user.

Assignments (2)
CHANGE OF NAME Recorded Jan 22, 2020
From: TRINITY INTEL MEDIA, LLC
To: TRINITY INFO MEDIA, LLC
Reel/Frame 051667/0060 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 1, 2015
From: BEGGY, TIMOTHY; NEAL, DAVID SHAUN
To: TRINITY INTEL MEDIA, LLC
Reel/Frame 035951/0087 →
Continuity (3)
Continuation 12951332 · Nov 22, 2010
Provisional Application 61309038 · Mar 1, 2010
Related Publication 20150302100A1 · Oct 22, 2015