Dynamic Random Sampling Pools Using Swap-and-Mask Updates

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Systems that utilize dynamically-changing pools for random sampling consume significant compute power and processing resources, particularly in scenarios with large, frequently-changing sample pools and high access frequencies, leading to inefficiencies.

Innovation Solution

Implementing 'swap and mask' operations to dynamically manage the contents of random sampling pools by swapping unavailable elements with the highest-indexed available element and masking them, ensuring constant computational cost regardless of array size or frequency of changes.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If traditional random sampling methods are used on dynamically changing pools, then sampling operations can be performed, but computational cost and processing resources increase significantly

Engineering Contradiction:
Improvesampling operation efficiencyVSAvoidcomputational cost
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The sampling pool is segmented into two distinct arrays: an exclusion array storing elements to be excluded, and a sampling pool array storing available elements. This segmentation allows independent management of excluded and included elements, enabling efficient updates without reprocessing the entire pool, thus reducing computational cost while maintaining sampling productivity

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Elements to be excluded are identified and moved to the exclusion array before the sampling operation begins. By performing this exclusion action preliminarily, the actual sampling operation only needs to operate on the reduced sampling pool array, avoiding the need to check or process excluded elements during sampling, thereby reducing computational overhead and improving efficiency

Inventive Principle:
Principle #10Preliminary action

2Reliability

If the sample pool is frequently updated to exclude elements, then sampling accuracy improves, but processing time increases

Engineering Contradiction:
Improvesampling accuracyVSAvoidprocessing time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Excluded elements are extracted from the sampling pool and stored in a separate exclusion array. This extraction ensures that excluded elements are completely removed from the sampling process, maintaining sampling accuracy. The extraction is performed efficiently by directly manipulating array indices and sizes, avoiding time-consuming searches or reorganizations, thus maintaining both accuracy and speed

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system dynamically adjusts the sampling pool by modifying array sizes and indices based on exclusion operations. The sampling pool array size is updated to reflect the current number of available elements, and array indices are adjusted accordingly. This dynamic approach allows the system to maintain accurate sampling representations while efficiently adapting to frequent updates without excessive processing time

Inventive Principle:
Principle #15Dynamics

3Adaptability or versatility

If large sample pools are managed with frequent changes, then sampling coverage is improved, but resource consumption increases

Engineering Contradiction:
Improvesampling pool coverageVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSLoss of energy

Solution Approach 1:

The exclusion array and sampling pool array structure provides universal functionality for managing elements in different states (excluded or available). This multi-functional array system can handle various sampling scenarios and exclusion patterns uniformly, maintaining comprehensive sampling coverage while using a consistent, efficient management approach that reduces resource consumption across different operations

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

Solution Approach 2:

Instead of physically moving or duplicating large amounts of data during exclusion operations, the system uses logical references through array indices and size parameters. The exclusion array stores references to excluded elements, and the sampling pool array maintains references to available elements. This copying approach allows the system to manage large sample pools with frequent changes while minimizing actual data movement and resource consumption

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12443457B2Efficient random sampling from dynamically changing sample pool
Publication Date: 2025.10.14 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12443457B2 patent drawing
  • US12443457B2 patent drawing
  • US12443457B2 patent drawing

AI summary

A method for cost-efficient repeated random sampling from a dynamically-changing sampling pool includes defining an array of elements to be selectively masked and unmasked throughout repeated random sampling operations from a first sampling pool. The first sampling pool includes unmasked elements of the array and excludes masked elements of the array. The method further includes identifying an exclusion element within the first sampling pool that is to be excluded from a sampling operation and removing the exclusion element from the first sampling pool. Removing the exclusion element is achieved by moving the exclusion element to a new position by swapping an array index of the exclusion element with an array index that was, during an immediately prior sampling operation, included within and bounding the first sampling pool and by masking the array index corresponding to a new position of the exclusion element. Following the swapping and masking operations, the first sampling pool is randomly sampled.