Graph-Based Geographical Query Suggestion System

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Interactive mapping systems face challenges in providing effective query suggestions that reduce user input time and offer relevant information, especially in highly-structured addressing systems, where existing solutions fail to suggest expanded geographical queries efficiently.

Innovation Solution

The method involves receiving characters input into a user interface, identifying nodes in a graph related to the input, calculating suggestion scores, ranking, and filtering candidate nodes based on geographic proximity and relationships to provide ranked lists of expanded query suggestions, which include entities not directly typed by the user.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If the system provides query suggestions only after the entire query is submitted, then the system complexity is low, but the user input time is increased

Engineering Contradiction:
Improveuser input timeVSAvoidsystem complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The system performs preliminary processing by building a graph structure of geographical entities and their relationships in advance, before any user query is submitted. This pre-computed graph enables the system to quickly identify related entities and generate expanded query suggestions as the user types each character, rather than waiting for complete query submission.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If the system suggests expanded geographical queries, then the user typing effort is decreased, but the calculation and filtering complexity is increased

Engineering Contradiction:
Improveuser typing effortVSAvoidcalculation and filtering complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The system applies different processing strategies to different parts of the query based on the user's typing progress. As the user types each character, the system locally updates the graph traversal to identify matching entities and their relationships, providing suggestions at each typing stage without requiring complete query submission. This localized processing reduces overall computational complexity.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system segments the query processing into character-by-character steps, where each typed character triggers a graph traversal to identify related entities. This segmentation allows the system to provide incremental suggestions without processing the entire query at once, reducing the computational burden at each step.

Inventive Principle:
Principle #1Segmentation

3Loss of information

If the system provides expanded query suggestions with entities not directly typed, then the information relevance is improved, but the processing time is increased

Engineering Contradiction:
Improveinformation relevanceVSAvoidprocessing time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system pre-computes and stores the graph structure of geographical entities, their relationships, and metadata in advance. This preliminary action enables rapid retrieval and suggestion generation during user interaction, as the system only needs to traverse the pre-built graph rather than computing relationships from scratch for each query.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS8694512B1Query suggestions
Publication Date: 2014.04.08 GOOGLE LLC
  • US8694512B1 patent drawing
  • US8694512B1 patent drawing
  • US8694512B1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for provided expanded geographical query suggestions. In one aspect, a method includes receiving one or more characters input into a user interface. A node in a graph is identified based on the one or more received characters, in which the node represents an entity having a name whose prefix contains the one or more received characters. A candidate node is identified in the graph that is related to the identified node, wherein the candidate node represents an entity having a name whose prefix does not contain the one or more received characters. The name of the entity represented by the candidate node is provided as an expanded query suggestion.