Binary Tree Search Restart with NoGood Markers for CSP

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Constraint satisfaction problems (CSPs) often involve large numbers of variables and constraints, leading to complex binary trees with many possible solutions, resulting in time-consuming searches and inefficiencies due to redundant exploration of previously searched portions of the tree.

Innovation Solution

A system and method that initialize and search a binary tree for efficient solutions to CSPs by introducing a restart mechanism based on a restart depth, where a new iteration of the search is started when the search depth is less than a predetermined value, and NoGood markers are used to mark and exclude previously searched portions of the tree, reducing redundant searches.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a binary tree is constructed to represent all possible assignments of variables to states in a CSP, then all possible solutions can be explored, but the search time increases significantly due to the large number of possible solutions

Engineering Contradiction:
Improvecompleteness of solution searchVSAvoidsearch time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies segmentation by dividing the binary tree search into multiple iterations, where each iteration searches a portion of the tree. The tree is segmented into levels, and the search focuses on specific depth ranges in each iteration, allowing the large search space to be handled in manageable segments rather than all at once.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements preliminary action by marking portions of the binary tree as 'NoGood' (invalid or already searched) before continuing the search. This preliminary marking prevents redundant exploration of known invalid paths, enabling the search to skip ahead and focus only on promising unexplored regions of the tree.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the binary tree is searched exhaustively to ensure all solutions are found, then complete coverage is achieved, but time is wasted searching portions of the tree that have already been searched

Engineering Contradiction:
Improvecompleteness of solution searchVSAvoidredundant search time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements feedback by maintaining a record of previously searched tree portions and using this information to guide subsequent search iterations. The search process continuously receives feedback about which regions have been explored, allowing it to adapt by skipping redundant areas and focusing on unexplored regions, thereby eliminating wasted search time while maintaining completeness.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

By pre-marking NoGood nodes during and between iterations, the patent performs preliminary action to prevent redundant searches. This proactive marking ensures that when the search resumes in subsequent iterations, it immediately avoids previously explored invalid paths rather than re-searching them.

Inventive Principle:
Principle #10Preliminary action

3Manufacturing precision

If the search continues deeply into the binary tree to find optimal solutions, then solution quality improves, but the search depth increases causing longer execution time

Engineering Contradiction:
Improvesolution efficiencyVSAvoidsearch execution time
Core Design Contradiction:
Manufacturing precisionVSLoss of time

Solution Approach 1:

The patent applies periodic action by implementing iterative search cycles with restarts at predetermined depth intervals. Instead of performing one continuous deep search, the search is conducted in periodic iterations, where each iteration searches to a certain depth and then restarts. This periodic approach allows the system to find sufficiently good solutions within reasonable time frames while maintaining the ability to explore deeper if needed in subsequent iterations.

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS8849741B2NoGood generation based on search tree depth
Publication Date: 2014.09.30 GOOGLE LLC
  • US8849741B2 patent drawing
  • US8849741B2 patent drawing
  • US8849741B2 patent drawing

AI summary

A constraint satisfaction problem (CSP) is used to model a real-world problem in an application domain. The CSP includes a plurality of variables, a plurality of states, and one or more constraints determining which states each variable is permitted to be assigned to in a solution to the CSP. A binary tree is created using the CSP. The binary tree is iteratively searched to determine an efficient solution to the CSP. A new iteration of the search of the binary tree is started when a search depth is less than a restart depth. The restart depth based on a deepest depth previously searched minus a restart value. When the search is restarted, a NoGood marker is created indicating a portion of the binary tree that is not to be searched in the new iteration of the search. An efficient solution to the CSP is reported.