Native App Search Ranking via User Affinity Scores

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current search engines fail to provide personalized search results for native applications based on user affinity, as they primarily rely on relevance of content without considering user-specific preferences and usage patterns.

Innovation Solution

A method that involves receiving search queries, accessing user-specific application affinity data to determine affinity scores for native applications, and adjusting search results based on these scores to provide more personalized rankings.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If search results are ranked based solely on content relevance, then the search operation is simple and fast, but the results are not personalized to user preferences

Engineering Contradiction:
Improvepersonalization of search resultsVSAvoidcomplexity of search processing
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system pre-calculates and stores affinity scores for native applications during a reporting process that occurs separately from search operations. This preliminary action allows the search engine to have user preference data ready before queries are submitted, enabling personalized results without adding complexity to the real-time search processing

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an affinity score as an intermediary metric that bridges user preferences and search results. This intermediary value quantifies user affinity for specific applications, allowing the search engine to adjust rankings based on user preferences without directly complex user behavior analysis during search execution

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If affinity data is collected during the search operation, then the data is fresh and relevant, but the search process becomes slower and less efficient

Engineering Contradiction:
Improveaccuracy of user affinity measurementVSAvoidsearch operation speed
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

User affinity data is collected and processed in advance during a reporting process that runs independently of search operations. This separation ensures that affinity measurements are accurate and up-to-date while search operations maintain their speed and efficiency, as no real-time data collection is performed during queries

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The reporting process continuously updates affinity data in the background without interrupting search operations. This continuous data collection ensures the affinity information remains current and relevant while maintaining uninterrupted, high-speed search functionality

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS10248698B2Native application search result adjustment based on user specific affinity
Publication Date: 2019.04.02 GOOGLE LLC
  • US10248698B2 patent drawing
  • US10248698B2 patent drawing
  • US10248698B2 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for affinity based ranking of native applications. In one aspect, a method includes accessing application affinity data for a user device from which a query was received, receiving a set of search results that each identify a respective resource determined to be responsive to the query, wherein one or more of the search results are a native application search results that each include a deep link to a respective one of the native applications installed on the user device from when the query was received, for each of the native application search results, determining the affinity score of the native application, adjusting the search results based on the affinity scores to generate an adjusted set of search results, and providing, to the user device, the adjusted search results.