IP Library Granted Patent US 10,025,869
Granted Patent B2
US 10,025,869 · App. 13/220,896 · Granted Jul 17, 2018

Methods and systems for dynamically rearranging search results into hierarchically organized concept clusters

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 10,025,869
App. No.
13/220,896
Granted
Jul 17, 2018
Kind
B2
Abstract

Methods of and systems for dynamically rearranging search results into hierarchically organized concept clusters are provided. A method of searching for and presenting content items as an arrangement of conceptual clusters to facilitate further search and navigation on a display-constrained device includes providing a set of content items and receiving incremental input to incrementally identify search terms for content items. Content items are selected and grouped into sets based on how the incremental input matches various metadata associated with the content items. The selected content items are grouped into explicit conceptual clusters and user-implied conceptual clusters based on metadata in common to the selected content items. The clustered content items are presented according to the conceptual clusters into which they are grouped.

Claims (72)

1. A method, comprising:

receiving search input to a system having a plurality of content items arranged in a hierarchy of conceptual clusters;

in response to receiving the search input, identifying, by the system, a first parent conceptual cluster and a second parent conceptual cluster of the hierarchy, each matching the search input, the first parent conceptual cluster and the second parent conceptual cluster each including a subset of the plurality of content items, each of the subsets of the plurality of content items being arranged within the respective parent conceptual cluster into a plurality of child conceptual clusters;

in response to identifying the first parent conceptual cluster and the second parent conceptual cluster, dynamically creating a third parent conceptual cluster to aggregate content items that are otherwise organized in different parent clusters by:

determining that the first parent conceptual cluster matches a first component of the search input;

determining that the second parent conceptual cluster matches a second component of the search input;

identifying a common concept that is shared to the first and second parent conceptual clusters;

identifying a first subset of the plurality of child conceptual clusters within the first parent conceptual cluster that match the common concept and that include content items that match the first and second components of the search input to exclude child conceptual clusters and content items within the first parent conceptual cluster that do not match the first and second components of the search input;

identifying a second subset of the plurality of child conceptual clusters within the second parent conceptual cluster that match the common concept and that include content items that match the first and second components of the search input to exclude child conceptual clusters and content items within the second parent conceptual cluster that do not match the first and second components of the search input;

generating a set of child conceptual clusters by combining the first and second subsets of the plurality of child conceptual clusters within the first and second parent conceptual clusters; and

associating the set of child conceptual clusters with the third parent conceptual cluster;

determining a number of results to be displayed on a display device based on a type of the display device;

in response to creating the third parent conceptual cluster, performing, by the system, a comparison of a number of the plurality of child conceptual clusters of the third parent conceptual cluster to the determined number of results to be displayed on the display device;

in response to determining that the number of the plurality of child conceptual clusters of the third parent conceptual cluster is less than or equal to the determined number, displaying at least some of the plurality of child conceptual clusters of the third parent conceptual cluster on the display device; and

in response to determining that the number of the plurality of child conceptual clusters is greater than the determined number, displaying the third parent conceptual cluster on the display device.

2. The method of claim 1 , further comprising causing the display device to display on a single screen the displayed child conceptual clusters and one or more additional conceptual clusters other than the third parent conceptual cluster, wherein the one or more additional conceptual clusters other than the third parent conceptual cluster is/are included in a different level of the hierarchy of conceptual clusters than the displayed child conceptual clusters.

3. The method of claim 1 , wherein the method further comprises causing the display device to display one or more of the content items on a same screen as the displayed child conceptual clusters.

4. The method of claim 3 , wherein at least one of the displayed child conceptual clusters includes at least one of the one or more displayed content items.

5. A method, comprising:

receiving search input to a system having a plurality of content items arranged in a hierarchy of conceptual clusters;

in response to receiving the search input, identifying, by the system, a first conceptual cluster and a second conceptual cluster of the hierarchy, each matching the search input, the first conceptual cluster and the second conceptual cluster each including a subset of the content items;

in response to identifying the first conceptual cluster and the second conceptual cluster, dynamically creating a third conceptual cluster to aggregate content items that are otherwise organized in different conceptual clusters by:

determining that the first conceptual cluster matches a first component of the search input;

determining that the second conceptual cluster matches a second component of the search input;

identifying a common concept that is shared to the first and second conceptual clusters;

identifying a first subset of the content items in the first conceptual cluster that match the common concept and that match the first and second components of the search input to exclude content items in the first conceptual cluster that do not match the first and second components of the search input;

identifying a second subset of the content items in the second conceptual cluster that match the common concept and that match the first and second components of the search input to exclude content items in the second conceptual cluster that do not match the first and second components of the search input;

generating a set of aggregated content items by combining the first and second subsets of the content items that are in the first and second conceptual clusters; and

associating the set of aggregated content items with the third conceptual cluster;

determining a number of results to be displayed on a display device based on a type of the display device;

in response to creating the third conceptual cluster, performing, by the system, a comparison of a number of the subset of content items of the third conceptual cluster to the determined number of results to be displayed on the display device;

in response to determining that the number of the subset of content items of the third conceptual cluster is less than or equal to the determined number, displaying at least some of the subset of the content items of the third conceptual cluster on the display device; and

in response to determining that the number of the subset of content items is greater than the determined number, displaying the third conceptual cluster on the display device.

6. The method of claim 5 , wherein the method further comprises causing the display device to display on a single screen the third conceptual cluster, a fourth conceptual cluster, and a content item included within the fourth conceptual cluster.

7. A system comprising:

a processor circuit configured to:

receive search input to a system having a plurality of content items arranged in a hierarchy of conceptual clusters;

in response to receiving the search input, identify a first parent conceptual cluster and a second parent conceptual cluster of the hierarchy, each matching the search input, the first parent conceptual cluster and the second parent conceptual cluster each including a subset of the plurality of content items, each of the subsets of the plurality of content items being arranged within the respective parent conceptual cluster into a plurality of child conceptual clusters;

in response to identifying the first parent conceptual cluster and the second parent conceptual cluster, dynamically create a third parent conceptual cluster to aggregate content items that are otherwise organized in different parent clusters by:

determining that the first parent conceptual cluster matches a first component of the search input;

determining that the second parent conceptual cluster matches a second component of the search input;

identifying a common concept that is shared to the first and second parent conceptual clusters;

identifying a first subset of the plurality of child conceptual clusters within the first parent conceptual cluster that match the common concept and that include content items that match the first and second components of the search input to exclude child conceptual clusters and content items within the first parent conceptual cluster that do not match the first and second components of the search input;

identifying a second subset of the plurality of child conceptual clusters within the second parent conceptual cluster that match the common concept and that include content items that match the first and second components of the search input to exclude child conceptual clusters and content items within the second parent conceptual cluster that do not match the first and second components of the search input;

generating a set of child conceptual clusters by combining the first and second subsets of the plurality of child conceptual clusters within the first and second parent conceptual clusters; and

associating the set of child conceptual clusters with the third parent conceptual cluster;

determine a number of results to be displayed on a display device based on a type of the display device;

in response to creating the third parent conceptual cluster, perform a comparison of a number of the plurality of child conceptual clusters of the third parent conceptual cluster to the determined number of results to be displayed on the display device;

in response to determining that the number of the plurality of child conceptual clusters of the third parent conceptual cluster is less than or equal to the determined number, display at least some of the plurality of child conceptual clusters of the third parent conceptual cluster on the display device; and

in response to determining that the number of the plurality of child conceptual clusters is greater than the determined number, display the third parent conceptual cluster on the display device.

8. The system of claim 7 , wherein the processor circuit is further configured to cause the display device to display on a single screen the displayed child conceptual clusters and one or more additional conceptual clusters other than the third parent conceptual cluster, wherein the one or more additional conceptual clusters other than the third parent conceptual cluster is/are included in a different level of the hierarchy of conceptual clusters than the displayed child conceptual clusters.

9. The system of claim 7 , wherein the processor circuit is further configured to cause the display device to display one or more of the content items on a same screen as the displayed child conceptual clusters.

10. The system of claim 9 , wherein at least one of the displayed child conceptual clusters includes at least one of the one or more displayed content items.

11. A system comprising:

a processor circuit configured to:

receive search input to a system having a plurality of content items arranged in a hierarchy of conceptual clusters;

in response to receiving the search input, identify a first conceptual cluster and a second conceptual cluster of the hierarchy, each matching the search input, the first conceptual cluster and the second conceptual cluster each including a subset of the content items;

in response to identifying the first conceptual cluster and the second conceptual cluster, dynamically create a third conceptual cluster to aggregate content items that are otherwise organized in different conceptual clusters by:

determining that the first conceptual cluster matches a first component of the search input;

determining that the second conceptual cluster matches a second component of the search input;

identifying a common concept that is shared to the first and second conceptual clusters;

identifying a first subset of the content items in the first conceptual cluster that match the common concept and that match the first and second components of the search input to exclude content items in the first conceptual cluster that do not match the first and second components of the search input;

identifying a second subset of the content items in the second conceptual cluster that match the common concept and that match the first and second components of the search input to exclude content items in the second conceptual cluster that do not match the first and second components of the search input;

generating a set of aggregated content items by combining the first and second subsets of the content items that are in the first and second conceptual clusters; and

associating the set of aggregated content items with the third conceptual cluster;

determine a number of results to be displayed on a display device based on a type of the display device;

in response to creating the third conceptual cluster, perform a comparison of a number of the subset of content items of the third conceptual cluster to the determined number of results to be displayed on the display device;

in response to determining that the number of the subset of content items of the third conceptual cluster is less than or equal to the determined number, display at least some of the subset of the content items of the third conceptual cluster on the display device; and

in response to determining that the number of the subset of content items is greater than the determined number, display the third conceptual cluster on the display device.

12. The system of claim 11 , wherein the processor circuit is further configured to cause the display device to display on a single screen the third conceptual cluster, a fourth conceptual cluster, and a content item included within the fourth conceptual cluster.

13. The system of claim 7 , wherein the display device comprises a television and/or a mobile device.

14. The system of claim 11 , wherein the display device comprises a television and/or a mobile device.

Assignments (14)
CHANGE OF NAME Recorded Sep 24, 2024
From: VEVEO, INC.
To: VEVEO LLC
Reel/Frame 069038/0030 →
CHANGE OF NAME Recorded Sep 24, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069038/0067 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 24, 2024
From: VEVEO LLC
To: ROVI GUIDES, INC.
Reel/Frame 068682/0724 →
PARTIAL RELEASE OF SECURITY INTEREST IN PATENTS Recorded Oct 27, 2022
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: VEVEO LLC (F.K.A. VEVEO, INC.); DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
Reel/Frame 061786/0675 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: HPS INVESTMENT PARTNERS, LLC
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053458/0749 →
RELEASE OF SECURITY INTEREST Recorded Jun 5, 2020
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
Reel/Frame 053481/0790 →
SECURITY INTEREST Recorded Jun 1, 2020
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS INC.; VEVEO, INC.; INVENSAS CORPORATION; INVENSAS BONDING TECHNOLOGIES, INC.; TESSERA, INC.; TESSERA ADVANCED TECHNOLOGIES, INC.; DTS, INC.; PHORUS, INC.; IBIQUITY DIGITAL CORPORATION
To: BANK OF AMERICA, N.A.
Reel/Frame 053468/0001 →
PATENT SECURITY AGREEMENT Recorded Nov 25, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 051110/0006 →
RELEASE OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 25, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: APTIV DIGITAL INC.; GEMSTAR DEVELOPMENT CORPORATION; INDEX SYSTEMS INC.; ROVI GUIDES, INC.; ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; SONIC SOLUTIONS LLC; STARSIGHT TELECAST, INC.; UNITED VIDEO PROPERTIES, INC.; VEVEO, INC.
Reel/Frame 051145/0090 →
SECURITY INTEREST Recorded Nov 22, 2019
From: ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; ROVI GUIDES, INC.; TIVO SOLUTIONS, INC.; VEVEO, INC.
To: HPS INVESTMENT PARTNERS, LLC, AS COLLATERAL AGENT
Reel/Frame 051143/0468 →
PATENT SECURITY AGREEMENT Recorded Jul 24, 2014
From: APTIV DIGITAL, INC.; GEMSTAR DEVELOPMENT CORPORATION; INDEX SYSTEMS INC.; ROVI GUIDES, INC.; ROVI SOLUTIONS CORPORATION; ROVI TECHNOLOGIES CORPORATION; SONIC SOLUTIONS LLC; STARSIGHT TELECAST, INC.; UNITED VIDEO PROPERTIES, INC.; VEVEO, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 033407/0035 →
PATENT RELEASE Recorded Jul 23, 2014
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: VEVEO, INC.
Reel/Frame 033381/0642 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2014
From: VEVEO, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 032682/0822 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 28, 2011
From: VENKATARAMAN, SASHIKUMAR; GARG, PANKAJ; RAJANALA, PRANAV
To: VEVEO INC.
Reel/Frame 026979/0450 →
Cited By (1)
US 12,645,712