User Matchmaking Templates for Fair and Fast Opponent Pairing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing client applications face issues with user matching, such as significant disparities in opponent skill levels and prolonged wait times, leading to a suboptimal user experience and potential churn.

Innovation Solution

A system and method for automatically matching users based on interaction templates, utilizing multiple player matching modules to identify suitable opponents, including New Player Matcher, Game Skill Level Matcher, Template Override Matcher, and others, to ensure fair and efficient competition.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If users are matched quickly without skill level consideration, then wait time is reduced, but match quality and user experience deteriorate due to large skill disparities

Engineering Contradiction:
Improvewait timeVSAvoidmatch quality
Core Design Contradiction:
Loss of timeVSReliability

Solution Approach 1:

The user base is segmented into different skill levels using ELO ratings and player buckets. The system divides the matchmaking pool into distinct groups (new players, casual players, competitive players, elite players) based on skill metrics, allowing simultaneous optimization for different segments rather than treating all users uniformly.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically adjusts matching parameters including ELO rating thresholds, time limits, and bucket assignments based on player characteristics and current match conditions. By changing these parameters adaptively, the system can balance speed and quality requirements for different match types and player scenarios.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If multiple matching criteria are used to ensure fair matches, then match quality improves, but system complexity and processing time increase

Engineering Contradiction:
Improvematch qualityVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Complex matching logic is segmented into separate player bucket categories (new players, casual players, competitive players, elite players), each with tailored matching criteria. This modular segmentation allows the system to apply appropriate complexity only where needed rather than uniformly across all matches.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different matching criteria and complexity levels are applied locally to different player segments rather than globally. For example, new players receive simplified matching with broader ELO ranges, while elite players receive more stringent matching with tighter skill thresholds, optimizing system resources according to local needs.

Inventive Principle:
Principle #3Local quality

3Reliability

If strict skill level matching is enforced, then match fairness improves, but availability of matches decreases and wait times increase

Engineering Contradiction:
Improvematch fairnessVSAvoidmatch availability
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system implements dynamic matching thresholds that adjust based on current player availability, time of day, and match conditions. ELO rating ranges and skill tolerances are not fixed but adapt in real-time to balance fairness with availability, allowing the system to maintain match quality while ensuring timely matchups.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

Matching parameters such as ELO rating differences, skill level thresholds, and bucket assignment criteria are changed dynamically based on system state. When player availability is low, the system relaxes parameters to improve match availability; when availability is high, parameters are tightened to enhance match fairness.

Inventive Principle:
Principle #35Parameter changes

4Measurement precision

If comprehensive player characteristics are analyzed for matching, then match precision improves, but processing time and computational resources increase

Engineering Contradiction:
Improvematch precisionVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

Player characteristics are segmented into key metrics (ELO rating, win/loss ratio, number of games played, account age) that are pre-calculated and stored. This segmentation allows the system to query specific attributes efficiently rather than analyzing complete player profiles, reducing processing time while maintaining match precision.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Player statistics and characteristics are pre-computed and cached before matching occurs. ELO ratings, skill metrics, and player bucket assignments are determined in advance based on historical performance data, eliminating the need for real-time analysis during the matching process and significantly reducing computational overhead.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250367562A1System and method for matching users of client applications
Publication Date: 2025.12.04 SKILLZ PLATFORM INC
  • US20250367562A1 patent drawing
  • US20250367562A1 patent drawing
  • US20250367562A1 patent drawing

AI summary

In an aspect, a request, from a first user of a plurality of users of an application client executing on respective mobile devices of the plurality of users, to interact with one or more other users of the plurality of users in the application client, based on a first plurality of interaction templates selected by the first user, can be received. A second user associated with a second interaction template can be determined from the plurality of users, and the determination can be based on an identification of a match between the second interaction template and a first interaction template from the first plurality of interaction templates. Interaction in the application client, between the first user and the second user, can be initiated in response to the determination of the second user. Related systems, apparatus, techniques, and articles are also described.