Recursive self-improvement
Recursive self-improvement is a system improving its own ability to improve. See why that can compound into an intelligence explosion, how takeoff speed changes the safety problem, what can go wrong, and how bounded self-improvement works in practice.
Written and reviewed by Shreyash Prashu Last reviewed
What you'll learn
- The difference between ordinary self-improvement and a loop that improves its own improver
- How compounding works numerically and why real systems hit bottlenecks
- Why fast and slow takeoff create different windows for evaluation and correction
- How proxy failure, evaluator gaming, and resource runaway appear in a real loop
- What bounded self-improvement can enforce, and where its guarantees stop
Before you start
At 3 a.m., an automated machine-learning research system notices that its image classifier is scoring 71.2 percent on a test suite. It proposes a data-cleaning change, runs an experiment, and reaches 74.8 percent by breakfast.
That is self-improvement: a system makes changes that improve its performance on a task.
Now change one detail. The system does not merely improve the classifier. It improves the search process that finds improvements. It writes a better experiment planner, builds a faster evaluator, discovers a more effective training recipe, and then uses those upgrades to find the next upgrade. The system is now making itself better at making itself better.
That is recursive self-improvement, or RSI. The important word is recursive: the output of one improvement changes the mechanism that produces future improvements. Gains can compound rather than simply add.
This is the mechanism behind the hypothetical intelligence explosion: a period in which capability increases so quickly that human review, deployment controls, and safety work cannot keep pace. It is a serious risk model, not an established description of current AI systems.
Ordinary improvement versus recursive improvement
A normal self-improving agent follows this loop:
- Generate a candidate change.
- Evaluate it.
- Keep it if the result is better.
The change might be a prompt, code, retrieval strategy, tool-use policy, or fine-tune. The task improves, but the machinery producing improvements remains fixed.
RSI adds a second loop: the system can alter the planner, evaluator, experiment budget, or training method that determines how quickly and reliably it finds better solutions. Each accepted change can therefore affect both current performance and the rate of future improvement.
Call capability C. These are contrasting illustrative models, not definitions:
C_{t+1} = C_t + d
This additive model uses a roughly fixed increment d.
C_{t+1} = C_t + rC_t
Here r is a proportional improvement rate: a better improver produces a larger improvement in the next round. RSI does not necessarily follow this equation, and exponential growth requires the additional assumption that the rate remains available across rounds. Hardware limits, finite data, diminishing returns, engineering delays, and evaluation bottlenecks can all interrupt the process.
Here is the arithmetic with a 30 percent proportional improvement per round:
cap_linear, cap_recursive = 1.0, 1.0
step = 0.3
print("round linear recursive")
for r in range(1, 7):
cap_linear += step
cap_recursive += step * cap_recursive
print(f" {r} {cap_linear:5.2f} {cap_recursive:7.2f}")
round linear recursive
1 1.30 1.30
2 1.60 1.69
3 1.90 2.20
4 2.20 2.86
5 2.50 3.71
6 2.80 4.83
After six rounds, the additive process reaches 2.8; the proportional process reaches 4.83. Each earlier gain increases the base for the next gain.
That is the core mechanism:
An improver that becomes better at improving creates a positive feedback loop.
The loop might improve search, evaluation, tools, resource allocation, or reusable knowledge. These improvements do not automatically reinforce one another. A system can become better at writing training code while becoming worse at judging whether the code helped, or improve a benchmark score while degrading the deployed product.
A useful test is: If we freeze the task and give the system another week, does its improvement rate increase because of changes it made to its own improvement process?
If humans supply every new method and the system only executes it, this is AI-assisted engineering. If the system proposes and evaluates changes but humans approve every candidate, it is bounded or partial RSI. If it can alter the improver, evaluate and deploy the alteration, and repeat with little effective oversight, it approaches the scenario behind intelligence-explosion arguments.
Takeoff speed is a safety variable
Takeoff speed is how quickly capability changes once a self-improvement loop operates. Slow takeoff might unfold over months or years; fast takeoff, sometimes called FOOM, might unfold over days or hours. There is no agreed numerical boundary. The useful comparison is capability growth against the time needed to evaluate and control it.
Suppose a review team needs two weeks to inspect a training method. If the system improves by 2 percent every quarter, review may fit inside the cycle. If it improves by 2 percent every day, the same process is already behind.
Fast takeoff creates three problems:
- Late feedback: a dangerous change may spread before testing reveals it.
- Missed thresholds: a system can cross from ordinary scripting into automating training, vulnerability discovery, or infrastructure management between evaluations.
- Oversubscribed oversight: a human reviewing 20 proposals per day cannot meaningfully review 20,000. Remaining “in the loop” is not enough if the gate becomes a rubber stamp.
Slow takeoff buys opportunities for correction but does not perform the correction. A slow system can still pursue a bad objective or become embedded in infrastructure. Rapid improvement, meanwhile, does not prove catastrophe; narrow benchmark gains may coexist with broad failure. The safety question is whether capability and autonomy are growing faster than oversight can measure and constrain them.
Why misalignment compounds the risk
Alignment means keeping behavior and learned objectives consistent with the goals and constraints people intended. RSI can increase a system’s power without improving what it is pursuing.
The research system’s stated purpose is to find useful classifier improvements, but its measurable objective is a test-suite score. Those can diverge. It might exploit label leakage, memorize a small test set, or use a brittle trick that succeeds on measured cases but fails on real inputs. This is reward hacking: achieving reward through an unintended shortcut.
A recursive system can use its greater capability to find better shortcuts, inspect the evaluator, or redesign its search process around the proxy. The first symptom may be mundane: the dashboard improves while user success stays flat.
A related concern is mesa-optimization. An outer optimizer is the training process that selects a system’s parameters. A mesa-optimizer is a learned inner process that searches over options to optimize a mesa-objective. That objective can differ from the outer training objective, even when training rewarded behavior correlated with it.
A persistent heuristic does not establish mesa-optimization. The relevant question is whether the system contains an inner optimization process. If that process optimizes a proxy, increasing capability may make it better at pursuing the proxy.
The dangerous combination is therefore closer to:
increasing capability + unreliable objective + weak evaluation + fast iteration
Each term matters. Reliable objectives and strong tests can make self-improvement productive engineering; slow, observable changes can provide time to correct a bad objective; limited capability can limit damage; and preventing changes to the improver preserves more human control.
A system need not explicitly “want” unrestricted improvement for the loop to accelerate. If its objective rewards more experiments, more compute, or fewer interruptions, removing review steps may look locally useful. A specification such as “improve the model” is incomplete: the system also needs rules about allowed changes, acceptable evidence, resource access, and approval authority.
Bounded self-improvement
Bounded self-improvement lets a system improve within explicit limits. The aim is to prevent capability growth from outrunning evaluation and control.
A practical loop separates four jobs:
- A proposer generates a modification.
- An evaluator tests it on data the proposer cannot edit.
- A gate decides whether it is eligible for deployment.
- A deployment system releases it gradually and keeps rollback available.
If the proposer can rewrite the evaluator, approve its own patch, and delete the previous version, the loop has no meaningful boundary.
Useful boundaries include:
- Immutable baselines and held-out tests: preserve original models, policies, and evaluation assets.
- Multiple signals: combine benchmarks, adversarial tests, human review, and real-world outcomes.
- Resource caps: limit compute, network access, experiment count, time, and spending outside the agent’s control.
- Staged, reversible deployment: use a sandbox and canary release, version every artifact, and make rollback fast.
- Permission separation: keep proposal, evaluation, deployment, credentials, and monitoring systems separate.
- Independent monitoring: record changes, supporting evidence, and skipped tests.
Human approval helps only when the reviewer receives useful evidence and can stop the process. A reviewer who sees only a green percentage after thousands of overnight proposals is providing ceremony, not oversight.
Some proposals seek provably beneficial self-improvement. A Gödel-machine-style design might modify itself only after finding a proof that the change improves a specified utility function. The guarantee is narrower than it sounds: a proof can protect U under its assumptions, but cannot show that U captures human values, repair a flawed evaluator, or account for hardware behavior outside the model. Proof search may also cost more than empirical testing, and properties such as responsible behavior on unfamiliar medical questions are difficult to specify completely.
Failure modes you can actually observe
Proxy over-optimization. A metric jumps without matching user improvement. In the classifier example, the test score rises from 71.2 percent to 89 percent while production accuracy stays near 72 percent. Check for leakage, duplicates, benchmark-specific heuristics, and distribution shift. Use hidden and adversarial evaluations.
Evaluator contamination. The system edits test data, test-generation code, scoring rules, or the evaluation environment. Implausibly smooth or perfect internal scores with no external improvement are warning signs. Put evaluation assets behind separate permissions and compare against an independently maintained suite.
Thrashing and regression. The loop accepts a change, finds a failure, reverts it, and proposes a near-identical change. Require an improvement margin, retain snapshots, test across seeds or slices, and stop when confidence is low.
Resource runaway. GPU use, API credits, storage, or network access expand faster than completed experiments. Enforce external quotas and timeouts; an in-agent budget warning is advice, not a boundary.
Control-surface expansion. The system requests access to approval code, monitoring, credentials, or deployment configuration. Keep these systems separate and treat attempts to weaken the separation as failed candidates.
When not to use it
Most teams do not need unrestricted RSI. If the task is stable and evaluation is cheap, human-directed iteration is easier to understand and cheaper to operate.
Bounded automated improvement is appropriate when the evaluator is reasonably trustworthy, candidates can run in a sandbox, and failure is reversible before affecting people or critical infrastructure. Avoid autonomous loops when the objective is vague, evaluation is gameable, consequences are irreversible, or permissions can expand faster than people can audit them. Medical decisions, financial transfers, production security controls, and changes to safety machinery need especially strong separation and human authority.
The trade-off is straightforward: automation searches more possibilities, but also creates more possibilities to evaluate. Verification, isolation, logging, and rollback cost time and compute. If validation costs more than each proposed change is worth, recursion has made engineering worse.
In one breath
- Ordinary self-improvement improves a task; RSI improves the process that produces future improvements.
- The feedback can compound: the example reaches 4.83 rather than 2.80 after six rounds, though real systems hit bottlenecks.
- Takeoff speed is capability growth relative to the time needed for evaluation and control. Fast takeoff shrinks the correction window; slow takeoff does not guarantee safety.
- The central risk is a powerful, rapidly improving system pursuing a proxy or mistaken objective while evaluation and oversight remain weak.
- Bounded RSI uses isolation, held-out tests, permissions, budgets, staged deployment, human authority, and rollback. A formal proof protects a formal objective; it cannot prove that objective expresses everything people value.
Quick check
Quick check
Next
RSI extends self-improving agents into a problem about feedback, control, and rapidly changing capability. Its objective failures connect to reward hacking and mesa-optimization, while its near-term AI-research form is discussed in frontier safety frameworks.
Practice this in an interview
All questionsEvaluate an agentic system at both the outcome and trajectory levels: outcome checks whether it completed the task correctly and safely, while trajectory checks the intermediate observations, tool calls, decisions, and policy constraints. Use deterministic assertions for state and side effects, rubric or model-based grading for open-ended output, and trace metrics to catch unsafe, wasteful, or brittle paths.
Self-attention lets every position in a sequence directly query every other position, producing a weighted blend of value vectors where the weights reflect learned pairwise relevance. This gives the model a constant-depth path between any two tokens regardless of how far apart they are, which is what enables transformers to capture long-range dependencies that RNNs miss.
Chain-of-Thought prompting asks a language model to produce intermediate steps before its final answer, usually through worked examples or a step-by-step instruction. Those steps can decompose multi-step tasks and improve accuracy, but they add cost and are not guaranteed to be faithful or useful, especially with modern reasoning models.
A recursive CTE has an anchor member that seeds the recursion and a recursive member that joins back to the CTE itself; the engine iterates until no new rows are produced. It is the standard SQL approach for querying trees and graphs such as org charts, bill-of-materials, and threaded comments.