Self-Improving AI Programming with Search-Based Self-Play

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional machine learning models for programming, such as LLMs, rely heavily on human-curated training data, which limits their ability to generate new programming solutions and are constrained by their training data, lacking the capability to explore new possibilities or improve beyond their training scope.

Innovation Solution

Implementing a self-improving AI programming model that utilizes machine learning models to generate program instructions through search operations, such as Monte Carlo Tree Search (MCTS), allowing the model to refine itself based on its own generated programs, reducing dependency on human data and enabling better programming performance over time.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If human-curated training data is used for training LLMs, then the models can learn programming patterns and generate code, but the models are constrained by their training data and cannot explore new possibilities or improve beyond their training scope

Engineering Contradiction:
Improveability to explore new programming solutionsVSAvoiddependency on human training data
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The system enables the AI model to train itself by generating its own training data through self-play simulations. The model generates programming instructions, executes them in a simulated environment, and uses the results to create training examples, thereby serving its own training needs without relying on external human-curated datasets

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The system implements a feedback loop where the AI model's generated programs are executed in a simulated environment, and the execution results (success/failure) are fed back to the model. This feedback mechanism allows the model to learn from its own actions and continuously improve its programming capabilities beyond its initial training data

Inventive Principle:
Principle #23Feedback

2Productivity

If conventional LLMs are trained on existing programming corpora, then they can generate code based on learned patterns, but they lack the capability to generate new programming solutions beyond their training data

Engineering Contradiction:
Improveprogramming code generation capabilityVSAvoidability to generate new programming solutions
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The system performs preliminary actions by having the AI model generate candidate programming instructions and simulate their execution before actual deployment. This pre-computation and simulation phase allows the model to explore potential solutions and learn from simulated outcomes, enabling it to generate more innovative and effective programming solutions

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The AI model serves its own training needs by generating its own training data through self-play. By creating and evaluating its own programming examples, the model continuously expands its capability to generate new programming solutions without being limited by external training corpora

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If search operations are used to generate program instructions with probability and value generation, then the model can plan ahead and explore new solutions, but the computational complexity and resources required increase

Engineering Contradiction:
Improveability to plan ahead and explore solutionsVSAvoidcomputational resources required
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The system applies partial action by performing search operations to a limited depth and using probabilistic sampling rather than exhaustive search. This approach generates sufficiently good programming instructions without requiring complete exploration of all possible solutions, thereby reducing computational complexity while maintaining effective problem-solving capability

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250252338A1Self-improving artificial intelligence programming
Publication Date: 2025.08.07 QUALCOMM TECHNOLOGIES INC
  • US20250252338A1 patent drawing
  • US20250252338A1 patent drawing
  • US20250252338A1 patent drawing

AI summary

Certain aspects of the present disclosure provide techniques and apparatus for improved machine learning. In an example method, a current program state comprising a set of program instructions is accessed. A next program instruction is generated using a search operation, comprising generating a probability of the next program instruction based on processing the current program state and the next program instruction using a machine learning model, and generating a value of the next program instruction based on processing the current program state, the next program instruction, and a set of alternative outcomes using the machine learning model. An updated program state is generated based on adding the next program instruction to the set of program instructions.