Hash-Based User Group Allocation for A/B Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In the context of large customer databases, existing methods for AB testing of computer executable applications, such as gaming services, require resource-depleting and time-consuming queries to determine user group assignments and analyze test results, straining computing resources and posing security and resource issues.

Innovation Solution

A system and method that uses an application server and user device to generate a hash of a user identifier and test identifier, process it to create an index value, and compare it with a distribution of numbers to select a test option, allowing for efficient allocation and analysis of test options without complex lookups, utilizing MD5 hashing and modulus operations to manage resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If traditional AB testing methods are used with large customer databases, then user group assignment can be determined, but computing resources are depleted and processing time increases

Engineering Contradiction:
Improveuser group assignment accuracyVSAvoidprocessing efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent segments the user base into distinct test groups (control group and test groups) using hash-based allocation. Each user is assigned to a group through a deterministic hash function that processes user identifiers, creating separable segments without requiring centralized database queries. This segmentation enables parallel processing and reduces computational overhead while maintaining accurate group assignment.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary hash-based group allocation before the actual A/B test execution. User group assignments are determined in advance through hash functions applied to user identifiers, creating a predetermined distribution scheme. This preliminary action eliminates the need for real-time database queries during test execution, significantly improving processing efficiency while preserving assignment accuracy.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If user group information is stored in separate servers with large databases, then user assignment can be tracked, but resource depletion and security issues arise

Engineering Contradiction:
Improveuser assignment trackingVSAvoidsystem architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the group assignment logic from centralized database servers and implements it locally through hash functions. Instead of storing and querying extensive user group information in centralized databases, the system extracts only the essential user identifier and applies a deterministic hash function to determine group membership. This extraction eliminates the need for complex centralized tracking infrastructure while maintaining reliable assignment tracking.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent enables each user's group assignment to be self-determined through local hash function execution. The system provides users with their user identifiers, and each user can independently compute their group assignment using the published hash function without requiring server queries or database access. This self-service mechanism reduces system complexity and eliminates security vulnerabilities associated with centralized user data storage.

Inventive Principle:
Principle #25Self-service

3Ease of operation

If queries are run over vast amounts of data to determine user group assignment, then proper option can be returned, but processing time increases

Engineering Contradiction:
Improveuser option deliveryVSAvoidquery processing time
Core Design Contradiction:
Ease of operationVSLoss of time

Solution Approach 1:

The patent replaces the mechanical database query system with a mathematical hash function-based system. Instead of mechanically searching through vast databases to retrieve user group assignments, the system uses deterministic hash functions that compute group membership through mathematical operations on user identifiers. This substitution reduces processing time from potentially extensive database searches to rapid mathematical computations, while maintaining ease of operation in delivering the proper test option to each user.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentUS11940903B2Testing systems and methods
Publication Date: 2024.03.26 KING COM
  • US11940903B2 patent drawing
  • US11940903B2 patent drawing
  • US11940903B2 patent drawing

AI summary

A computer implemented method, system and computing device for identifying a test option associated with an application for a user is described. The method comprises selecting a predefined test indicated by a test identifier associated with the requested application, the test having more than one test option associated therewith, generating a hash of the test identifier and a user identifier associated with the user, processing the hash to generate an index, comparing said index with a distribution of numbers divided into multiple ranges, each range being associated with a test option, and selecting a test option associated with the range into which the index falls. The applications may be computer gaming applications.