Self-Configurable Application Model Using Platform Clustering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Modern computer software applications face challenges in maintaining optimal performance across various computing platforms due to the vast array of hardware and software configurations, leading to degraded user experiences in applications like real-time communication (RTC).

Innovation Solution

The system employs unsupervised clustering algorithms to group similar computing platforms into clusters, rank these clusters based on performance data, and apply feature setting templates tailored to each rank, ensuring optimal feature settings for each platform without relying on in-execution performance metrics.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the application uses a fixed configuration for all computing platforms, then the device complexity is reduced, but the adaptability to different hardware and software configurations deteriorates

Engineering Contradiction:
Improveadaptability to different computing platformsVSAvoidconfiguration complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent segments the computing platforms into distinct clusters based on their hardware and software characteristics. By dividing the diverse platform landscape into manageable groups (e.g., mobile devices, desktops, servers), the system can apply tailored configurations to each cluster rather than attempting to handle every possible configuration individually, thus reducing overall complexity while maintaining adaptability.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent dynamically changes configuration parameters based on the detected computing platform cluster. Different quality settings, feature enablements, and performance thresholds are adjusted according to the platform cluster identification, allowing the application to adapt to varying hardware capabilities without requiring manual configuration or complex platform-specific code.

Inventive Principle:
Principle #35Parameter changes

2Productivity

If the application continuously monitors performance to adjust settings, then the productivity is improved, but the loss of time increases due to continuous monitoring overhead

Engineering Contradiction:
Improveapplication performance optimizationVSAvoidtime for continuous performance monitoring
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent performs preliminary actions by pre-defining performance thresholds and quality settings for different platform clusters before the application executes. The system determines appropriate configurations in advance based on platform characteristics, eliminating the need for continuous real-time monitoring and adjustment during application execution, thus improving productivity while reducing time loss.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The application performs self-service by automatically identifying its own platform cluster and applying the corresponding pre-configured settings without external intervention or continuous monitoring. The system self-adjusts based on its detected environment, reducing the need for continuous performance monitoring while maintaining optimized productivity.

Inventive Principle:
Principle #25Self-service

3Manufacturing precision

If the application provides high-quality features on all platforms, then the manufacturing precision of feature quality is improved, but the use of energy increases on lower-powered devices

Engineering Contradiction:
Improvefeature quality consistencyVSAvoidenergy consumption on computing devices
Core Design Contradiction:
Manufacturing precisionVSUse of energy by moving object

Solution Approach 1:

The patent applies local quality by tailoring feature quality settings to the specific capabilities of each platform cluster. Instead of uniformly providing maximum quality across all platforms, the system adjusts quality parameters locally according to device capabilities (e.g., CPU power, memory capacity, GPU performance), ensuring optimal quality where supported while conserving energy on lower-powered devices.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The system dynamically changes quality parameters such as video resolution, audio bitrate, and processing intensity based on the detected platform cluster. On high-powered devices, the application enables high-quality features with higher energy consumption, while on lower-powered devices, it automatically reduces quality parameters to match hardware capabilities, thus balancing feature quality with energy consumption.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12254315B2Machine capability model for self-configurable applications
Publication Date: 2025.03.18 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12254315B2 patent drawing
  • US12254315B2 patent drawing
  • US12254315B2 patent drawing

AI summary

Disclosed in some examples are methods, systems, and machine-readable mediums which customizes application feature settings using ranked clusters from an unsupervised modelling algorithm that clusters similar computing platforms and feature settings templates that map these ranks to feature settings. In some examples, a model may is periodically built using a first set of computing platform properties observed from computing platforms that the application is executing on. These clusters are then ranked using a second set of computing platform properties observed from other computing platforms that the application is executing on and performance data that describes performance of the application on those platforms.