IP Library Granted Patent US 8,868,550
Granted Patent B2
US 8,868,550 · App. 12/430,743 · Granted Oct 21, 2014

Method and system for providing an answer

Inventors: Adam Doppelt (Seattle, WA); Ethan Lowry (Seattle, WA); Patrick O'Donnell (Seattle, WA)
Assignee: CitySearch, LLC
H04W4/02H04L67/18G06Q10/02
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 8,868,550
App. No.
12/430,743
Granted
Oct 21, 2014
Kind
B2
Abstract

A method of providing an answer, comprising receiving a criteria, identifying a subset of a set of answers in a data store based on the criteria, calculating a random value for each of the answers in the subset, ranking the subset of answers based on the random values, selecting one of the answers of the subset based on the ranking; and providing an output including the selected answer.

Claims (82)

1. A method of providing an answer, comprising:

storing a plurality of answers in a data store;

receiving at least a position of a mobile device;

identifying at least a first subset from the answers in the data store based on the position;

calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated;

selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

providing at least a first output including the selected answer.

2. The method of claim 1 , wherein the position is a GPS position of a mobile device.

3. The method of claim 1 further comprising:

calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated;

ranking the first subset of answers based on at least the random values, wherein the selection of the at least one answer of the first subset is based on the ranking of the first subset.

4. The method of claim 3 , further comprising:

receiving at least a first request signal including the first criteria of a network at a server; and

transmitting at least a first response signal including the selected answer of the first subset in response to the request signal wherein the random value is calculated in response to receiving the request signal and before transmitting the response signal.

5. The method of claim 4 , further comprising:

receiving at least a first narrowing criteria, the first subset of answers being identified based on the first narrowing criteria.

6. The method of claim 5 , wherein the first narrowing criteria includes at least one of neighborhood, cuisine and price.

7. The method of claim 5 , further comprising:

receiving at least a second narrowing criteria;

identifying at least a second subset of a set of answers in a data store based on the second narrowing criteria;

calculating at least a second random value for each of the answers in the second subset wherein the second random values are calculated in response to receiving the second narrowing criteria wherein the second random value is different than the first random value for a particular one of the answers;

ranking the second subset of answers based on the second total scores;

selecting one of the answers of the second subset based on the ranking of the second subset; and

providing at least a second output including the selected answer of the second subset.

8. The method of claim 3 , further comprising:

storing a position of each of the answers of the set;

calculating a distance from the position of the mobile device to a position of each answer to determine a plurality of distances;

obtaining a plurality of distance scores based on a ranking of the distances;

storing the distance scores, wherein the at least one answer is at least in part selected based on the distance scores.

9. The method of claim 7 , further comprising:

obtaining a total score for each answer by combining the distance score and the random value for each answer;

ranking the first subset of answers based on at least the total scores, wherein the selection of the at least one answer of the first subset is based on the ranking of the first subset based on the total scores.

10. The method of claim 3 , further comprising:

storing popularity scores of each of the answers;

obtaining a total score for each answer by combining the random value and the popularity score for each answer; and

ranking the first subset of answers based on at least the total scores, wherein the selection of the at least one answer of the first subset is based on the ranking of the first subset based on the total scores.

11. The method of claim 3 , wherein the selected answer is the answer in the subset having the highest ranking, further comprising:

receiving a request signal; and

in response to the request signal providing an output including a selected answer having the next highest ranking in the subset.

12. The method of claim 11 , further comprising:

recording each answer that has been provided as an output; and

limiting the subset of answers to exclude a last predetermined number of answers that have been provided as an output.

13. A non-transitory computer readable medium having stored thereon a set of instructions which, when executed by a processor of a computing device caries out a method of providing an answer, comprising:

storing a plurality of answers in a data store;

receiving at least a position of a mobile device;

identifying at least a first subset of a set of answers from the answers in the data store based on the position;

calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated;

selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

providing at least a first output including the selected answer of the first subset in response to the first criteria.

14. A server computer system comprising:

a processor;

a storage device connected to the processor; and

a set of instructions stored on the storage device and readable by a processor to execute a method of providing an answer, comprising:

storing a plurality of answers in a data store; receiving at least a position of a mobile device;

identifying at least a first subset of a set of answers from the answers in the data store based on the position;

calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated;

selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

providing at least a first output including the selected answer of the first subset in response to the first criteria.

15. A method of obtaining and answer on a mobile device, comprising:

determining at least a position of the mobile device;

transmitting the position of the mobile device from the mobile device to a server, the server identifying at least a first subset of a set of answers in a data store based on the position, calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated, selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

receiving at least a first output from the server including the selected answer of the first subset.

16. The method of claim 15 , further comprising:

utilizing a GPS module of the mobile device to determine a GPS position of the mobile device, the criteria including the GPS position of the mobile device.

17. The method of claim 15 , further comprising:

detecting movement of the mobile device;

determining whether acceleration of the mobile device is more than a predetermined threshold; and

if acceleration of the mobile device is more than the predetermined threshold, transmitting the position of the mobile device from the mobile device to the server.

18. The method of claim 15 , further comprising:

receiving a narrowing criteria entered into the mobile device; and

transmitting the narrowing criteria from the mobile device to a server, the subset of answers being based on the narrowing criteria.

19. A non-transitory computer readable medium having stored thereon a set of instructions which, when executed by a processor of a computing device caries out a method of providing an answer, comprising:

determining at least a position of the mobile device;

transmitting the position of the mobile device from the mobile device to a server, the server identifying at least a first subset of a set of answers in a data store based on the position, calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated, selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

receiving at least a first output from the server including the selected answer of the first subset.

20. A mobile device comprising:

a processor;

a storage device connected to the processor; and

a set of instructions stored on the storage device and readable by a processor to execute a method of providing an answer, comprising:

determining at least a position of the mobile device;

transmitting the position of the mobile device from the mobile device to a server, the server identifying at least a first subset of a set of answers in a data store based on the position, calculating at least a first random value for each of the answers in the first subset wherein the random value is different each time that it is calculated, selecting at least one of the answers of the first subset, wherein the selection is at least in part based on randomness which causes the selection to be different every time that the same first data set is identified in response to the receiving of the position; and

receiving at least a first output from the server including the selected answer of the first subset.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 26, 2018
From: CITYGRID MEDIA, LLC
To: IAC PUBLISHING, LLC
Reel/Frame 047584/0258 →
CHANGE OF NAME Recorded Dec 16, 2014
From: CITYSEARCH, LLC
To: CITYGRID MEDIA, LLC.
Reel/Frame 034642/0255 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 27, 2009
From: DOPPELT, ADAM; LOWRY, ETHAN; O'DONNELL, PATRICK
To: CITYSEARCH, LLC
Reel/Frame 022601/0764 →
Continuity (1)
Related Publication 20100273139A1 · Oct 28, 2010