LOES Prefix Tree Encoding for Memory-Efficient Duplicate Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory-based search heuristics for domain-independent planning face challenges in succinct representation and memory efficiency, particularly with best-first search algorithms like A* that require duplicate detection, leading to excessive memory usage and inefficiencies.

Innovation Solution

The method involves encoding a prefix tree representation of states as a level-ordered edge sequence (LOES), which encodes inner tree nodes as bit pairs and identifies complete subtrees using a code-point, allowing for pruning and efficient navigation, thereby reducing memory requirements and improving processing efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If perfect hashing is used to associate subproblems to precomputed solutions, then access efficiency is improved, but memory usage increases due to excessive unused slots in the data array

Engineering Contradiction:
Improveaccess efficiencyVSAvoidmemory usage
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent segments the prefix tree into complete subtrees that can be identified and pruned. By dividing the tree structure into manageable complete subtree units, the system can efficiently represent large state sets without allocating memory for all possible nodes, thus reducing unused slots while maintaining access efficiency through structured organization.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies partial action by pruning complete subtrees from the prefix tree. Instead of maintaining the full tree structure with all possible nodes, the system keeps only the necessary portions (pruned trees) while using code-points to represent complete subtrees. This partial representation significantly reduces memory usage while preserving the ability to efficiently access and process relevant state information.

Inventive Principle:
Principle #16Partial or excessive action

2Quantity of substance

If BDDs are used to represent pattern databases, then space efficiency is improved through merging isomorphic sub-graphs, but adaptability decreases when dealing with complex subproblems in domain-independent planning

Engineering Contradiction:
Improvespace efficiencyVSAvoidadaptability to complex subproblems
Core Design Contradiction:
Quantity of substanceVSAdaptability or versatility

Solution Approach 1:

The patent creates a universal prefix tree representation that can handle both simple and complex subproblems in domain-independent planning. The level-ordered edge sequence encoding and complete subtree pruning mechanism provide a flexible framework that adapts to different problem domains and complexities, unlike BDDs which are optimized for specific cases. This universal approach maintains space efficiency while improving adaptability across diverse planning domains.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The patent changes the representation parameters from BDD's binary function graphs to prefix trees with level-ordered edge sequences. This parameter change allows for more flexible state representation that can accommodate complex subproblems while maintaining compactness through complete subtree identification and pruning. The encoding scheme adapts to different domain complexities by varying the tree structure and pruning decisions.

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If linear-space search algorithms like IDA* are used, then memory usage is reduced, but processing time increases due to extra node expansions without duplicate detection

Engineering Contradiction:
Improvememory usageVSAvoidprocessing efficiency
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The patent performs preliminary action by pre-computing and storing the pruned prefix tree structure with complete subtree code-points before the actual search process. This preprocessing step creates an efficient data structure that enables fast duplicate detection during search without requiring extensive memory. The preliminary organization of state information in the pruned tree allows IDA* to efficiently recognize and skip duplicate nodes, improving processing efficiency while maintaining low memory usage.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9876638B2System and method for compressed level-ordered edge sequence encoding
Publication Date: 2018.01.23 XEROX CORP
  • US9876638B2 patent drawing
  • US9876638B2 patent drawing
  • US9876638B2 patent drawing

AI summary

Compressed Level-Ordered Edge Sequence (CLOES) encodings are described. These techniques enable more aggressive compression of a state-set representation.