Machine Learning Code Optimization Subdivision

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing methods for optimizing software code are time-consuming and prone to human error, especially as code complexity increases, leading to inefficient resource utilization and potential environmental impact.

Innovation Solution

A computer-implemented method that uses a machine learning model to identify and optimize code blocks with high processing times by subdividing them and providing recommendations for improvement, thereby reducing resource consumption and environmental footprint.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If manual code optimization is used, then code efficiency can be improved, but the process becomes time-consuming and error-prone

Engineering Contradiction:
Improvecode optimization efficiencyVSAvoidoptimization time
Core Design Contradiction:
ProductivityVSLoss of time

Solution Approach 1:

The patent replaces manual mechanical code review and optimization processes with an automated machine learning system. The ML model analyzes code metrics, identifies optimization opportunities, and generates recommendations automatically, substituting human effort with algorithmic processing that is both faster and more consistent.

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

Solution Approach 2:

The system enables code to be optimized through self-analysis using ML models. The automated process independently evaluates code metrics, identifies bottlenecks, and generates optimization recommendations without requiring manual intervention, allowing the code optimization process to serve itself.

Inventive Principle:
Principle #25Self-service

2Adaptability or versatility

If code complexity increases, then system functionality improves, but optimization becomes more difficult and error-prone

Engineering Contradiction:
Improvesystem functionalityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a feedback mechanism where the ML model continuously analyzes code metrics and provides optimization recommendations. This feedback loop helps manage code complexity by systematically identifying and addressing optimization opportunities as code evolves, maintaining efficiency even as functionality increases.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system monitors and responds to changes in code parameters and metrics using ML models. As code complexity increases, the ML model adjusts its analysis to identify new optimization patterns and recommendations, adapting to the changing code structure and maintaining optimization effectiveness.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If traditional optimization methods are used, then some performance improvement can be achieved, but resource utilization remains inefficient

Engineering Contradiction:
Improveperformance improvementVSAvoidresource utilization
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent replaces traditional resource-intensive optimization methods with ML-based analysis that requires fewer computational resources during the optimization process itself. The ML model efficiently analyzes code metrics and generates recommendations with lower overhead compared to traditional profiling and optimization tools.

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

Data Source

PatentUS20250156161A1Program code optimization using iterative application of machine learning model
Publication Date: 2025.05.15 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US20250156161A1 patent drawing
  • US20250156161A1 patent drawing
  • US20250156161A1 patent drawing

AI summary

A computing device may insert a library function into a set of code. The computing device may use the library function to capture one or more metrics associated with execution of the set of code in a testing environment. The computing device may evaluate the processing times to identify a portion of the set of code with a processing time that is highest compared to processing times of other portions of the set of code. The computing device may subdivide the portion of the set of code into subdivided portions of the set of code. The computing device may train a machine learning model, utilizing the subdivided portions of the set of code, to obtain a trained model. The computing device may recommend, using the trained machine learning model, optimization code to improve the processing time as the set of code is modified.