The Robot That Left Its Model Alone and Fixed Everything Around It — PhysEvo

Do you rewire a genius's brain, or hand the genius better tools? A robotics project froze the model that drives the robot and rebuilt only the surrounding system from its own failure logs — and the exact same model's success rate climbed from 26% to 68%.
← 목록으로
온
온틀 리서치
2026년 10월 10일 Updated 2026.10.16 31 min read views 2

A robotics study called PhysEvo made a deliberate choice: leave the model alone. The model that drives the robot (I'll call it Astra here) is frozen solid, right down to the internal settings it learned during training — its weights. Instead, only the system wedged between the model and the robot arm gets rewritten, and it rewrites itself by reading its own failure logs.

Start with the result. The same model and the same capabilities were organized three different ways and pointed at the same set of 10 tasks. Let the model drive the robot directly: 26% success. Hand the job to a separate policy trained to specialize in action alone: 48%. Route it through that middle system after it has been repaired by experience: 68%. Not a single character of the model changed, and this last arrangement scored highest.

Let me draw one line in the sand first. That 68% is the score of a "version tuned per task and then locked in." This is not one general-purpose robot you can hand any job to on the spot. What was proven and what was not — that distinction matters all the way to the end of this piece.

The paper calls that "middle system" the harness. It's the layer that translates the model's commands into actual robot motion. Think of it as the "how to prep your ingredients" and "rules for using the counter" that a seasoned chef hands to a clumsy assistant. It isn't the cooking skill (the model) itself — it's the procedure that turns that skill into a plate actually leaving the kitchen.

Freezing the model and fixing only its surroundings isn't entirely new. What sets PhysEvo apart is that it put both the action interface that issues commands to the robot and the diagnostic tools that let you see what went wrong and why into the editable zone — while keeping the model, and only the model, frozen to the end.

A Smart Head That Collapses at the Hands

A robot pouring water hesitates. The bottle in its grip blocks the wrist camera, so it can't tell whether the water is going into the cup or splashing on the floor. This robot's head is smart. On an object-classification task it scores 100%. Looking and judging is nearly flawless. But the moment it has to use its hands, it falls apart.

Why would it adopt that exact pose, the one that blinds itself? When you tell a robot "go over there," you usually just mark the single target point where the fingertip should land. This is called TCP (tool-center-point control). How to fold the arm to get there is something the robot computes backward on its own. That automatic computation is inverse kinematics. The problem is that the instant you only mark the target point, the entire authority over "what pose to travel in" is handed off to that automatic computation. So even when the bottle ends up in an awkward pose that blocks the camera, the model has no way to step in and say "set the joints like this."

So the authors' diagnosis isn't "the model is dumb." The bottleneck wasn't in the head — it was in the interface between them. Trying the same thing one more time changes nothing. What's needed is to secure a usable line of sight, or to win back the authority to pick the pose directly — to change the interface itself.

The Model That Couldn't Prevent the Failure Fixes It

This is the strangest part of the study. How can the very model that couldn't prevent a failure turn around and fix it?

The answer is in when it looks. Evidence that wasn't there at the moment of choosing an action is still sitting there when you look back after it's all over. Once execution ends, there's a complete record of what commands the model issued and how the robot actually moved. Read that after-the-fact log and you can pinpoint where it slipped. In the water-pouring case, reading this log and editing one skill to "stand aside with a free arm and watch the scene" made the next attempt succeed. A skill here is a set of instructions written down for how the robot should move in a particular situation.

The payoff of handing authority back shows up in the numbers too. Holding the model, the skills, the initial state, and the budget all equal, the three arrangements (fingertip-target only, direct joints, both) were compared side by side across two batches (six runs total). Fingertip-target-only control averaged 40 points; control that let the model pick joints directly scored 100. The interesting part: opening up both tools scored 55 — actually lower than joints-only. Handing over more tools isn't the answer. The signal is that giving the right authority is what matters.

One Person Who Drives, Then Becomes the Mechanic

So PhysEvo makes a single model alternate between two roles. One is the task agent, which observes and drives the robot. The other is the meta agent, which dissects that execution, fixes the tools and skills, tests the proposed changes, and keeps only what works. They're the same model, but each gets a different context and a different set of tools to touch.

It's like the same person gripping the wheel during the race and then becoming the mechanic afterward to work on the car. The driving skill (the model) stays the same, but the car (the harness) gets better race after race.

The boundaries are clear. What the meta agent may touch: the action and observation tools, the execution logic, the skills, even its own diagnostic tools. What it can never touch, to the very end, is three things — the model weights, the physical laws the robot obeys, and the criteria used to score the task.

Passing Each Fix Down to the Next Round

The loop itself is simple. Run it, read the log, form a hypothesis about the cause, fix a tool or a skill, test the fix, and pass only what passes on to the next attempt. The acceptance bar is strict. If a fix changes behavior, it's run side by side with the current harness on the same task and the same initial scene, and it's accepted only when the score goes up — or at least doesn't drop — while clearing the point where it used to get stuck. If it goes down, it's thrown out. When a tool changes, its usage instructions are updated and passed along too. That way the next round inherits the new capability and how to use it at the same time.

There's one more layer on top of this. A tool built in one round can help correct a completely different round. The packing task went this way. The meta agent pulled back out a review tool it had built for itself in an earlier round and traced the box getting shoved out of place all the way back to a prior collision — the moment the upright box lid struck the wrist and the gripper. Then it fixed the skill to clear some headroom above the lid before rotating the box. It's not just fixing the car — it's building a better wrench and reaching for that wrench at the next service. Improvements compound. This is the core of what the authors call "physical recursive self-improvement."

Real Skill, or a Leaked Answer Key?

How did they tell whether this score is real skill, or just the result of memorizing the "answer key" of problems they saw during development?

The goal is a fair exam. So the object layouts used for scoring were never shown, not once, through all the development and fixing. Five never-before-seen layouts are pulled out only at scoring time, run once each, and the results averaged. The fixes produced by self-improvement are tested only during development; they never touch these scoring layouts. For each task, a single "deployment version" is locked in, and that version takes five runs. More strictly still, right before scoring they wipe the session context, the past screen logs, and the editable memory. In-the-moment corrections within a single attempt are allowed, but once the tools and skills are locked, they don't change mid-scoring. That way only improvements that also hold up in unseen situations survive into the score.

What the Numbers Are Saying

PhysEvo's success rate is 62%. That 62%, though, is not a flat average over 42 tasks — it's the five capability-level success rates below, averaged with equal weight. (Average the 42 tasks with equal weight and you get 58.57%.) That beats the 47.17% of the strongest public baseline the authors single out (RoboDawn one-shot) by 14.83 percentage points on the capability-average basis. But it didn't win on every capability. Self-improvement worked intensively on specific ones.

Capability Vs. the strongest baseline
Memory Big lead (+46.67%p, perfect on both score and success rate)
Open-ended instruction following Ahead (+17.50%p)
Precision Ahead (+15.00%p)
Long-horizon execution Tied
Generalization Slightly behind

Here's where you have to ask "why." That it's specifically "memory" that hit a perfect score doesn't look like a coincidence. From here on this is interpretation of the result, not the result itself. The very mechanism — looking back at failure logs and fixing skills — is the act of writing past mistakes down as documents to be consulted next time. In other words, it's the process of planting "memory" into the system. Read the same way, the fact that generalization lags (score 51.08 vs. 55.08) and long-horizon execution stands still also makes sense. Harness fixes are strong at local correction: "it failed like this in this situation, so fix it like this." The power to stretch into never-seen types or to carry a long sequence through to the end doesn't grow much from this approach alone.

The Most Dramatic Evidence

The sharpest place the "the interface is the bottleneck" diagnosis shows itself is somewhere else: the 8 hard manipulation tasks that direct control can barely finish.

8 hard manipulation tasks Success rate
PhysEvo 55.00%
Simate-beta 50.83%
Liber-0 Preview 46.44%
RoboDawn 45.00%
Official Astra baseline 1.25%

The official Astra baseline — the same model driving directly — stalled at 1.25%. PhysEvo, with its harness fixed, hit 55%. A gap of 53.75 percentage points. In the exact arena where interface problems like a blocked view and a folded pose decide win or lose, the diagnosis that it was the surroundings, not the model, blocking the way opens up the widest in the numbers. Of course there's task-by-task variance inside this too. It's not across-the-board dominance — it's an improvement strong on specific failure types.

And it isn't a sim-only story. The evolved harness was put on a real robot arm (AgileX PiPER) and the same run-and-fix loop was continued. Across 5 tasks, 5 runs each, 25 attempts in all, it scored an average of 90.60 points at an 84% success rate. Block stacking, bowl stacking, and pen placing hit 100%; water pouring and writing "PhysEvo" came in at 60% each (writing scored 93). What's worth noting is that the same loop patched gaps in reality that never showed up in simulation. When the flowing water, pushed forward by momentum, overflowed the cup, it fixed the pouring skill to pull the bottle mouth slightly behind the cup. For object position, it switched from grasping by pure geometry to first approaching roughly with the camera, then re-measuring up close for fine adjustment.

How Far Can You Trust This?

Good numbers aren't everything. There are two limits worth chewing on.

First, the line I drew at the top becomes genuinely important here. Generalization to "never-seen object layouts" was proven. But the ability to solve a "never-seen task type" straight away, without a development process, is not what this experiment showed. The two have to be read separately.

Second, for this approach to work at all, there must be a "reliable performance signal that lets you compare two versions side by side in the same situation." The simulator's scorer, or real-world per-task success criteria, play that signal's role. In domains where such a signal is hard to design, this method doesn't transfer cleanly. Keep in mind too that the evaluation itself is confined to the physical domain of robot manipulation.

Where ONTLE Would Use This

This isn't a study you can copy as-is. It's about robot manipulation, and ONTLE is software PM. What carries over is only the design pattern. Let me hold it up against one scene.

A client, mid-project, asks to move the delivery date up. The AI PM agent takes this in, reschedules, and pushes the changes into the connected systems. The trouble only surfaces after execution. A dependency nobody caught throws one deliverable out of alignment, and right now a human has to notice it and roll it back by hand. Worse, the same class of mistake repeats on the next client's date change.

Lay PhysEvo's prescription over this scene and it looks like this: separate the PM that executes from the role that, after it's done, reads the logs, the change history, and the outcome to diagnose the failure and fix the PM's tools and playbooks. Then let the next project inherit the fix. That playbook and those action tools the PM uses are the software edition of the harness from the top of this piece. In drawing performance not from a smarter model but from the discipline of fixing, verifying, and preserving this middle layer, it lines up with the direction ONTLE has been moving — narrowing agent behavior to a common spec and having the server verify its execution.

One caveat, though — one place you can't transplant it blindly. PhysEvo rigorously kept the scoring layouts out of the fixing. Ported to ONTLE, that means when you self-improve the action tools or playbooks, you run the verification only on development cases, and you leave the client's actual acceptance criteria out of the tuning. The moment you start shaving tools to fit a client's acceptance criteria, that one client's job may pass, but any guarantee it works on the next, never-seen project is gone. The rule "accept only when the score goes up, or at least doesn't drop" works just as well as the bar for improving PM tools.

So the one line this study leaves behind is this: rather than waiting on one smarter genius model, designing a system that records its failures, banks them as assets, and uses those records to fix its own tools and procedures may well be — at least from where ONTLE stands — the faster road.

Frequently Asked Questions

Does Astra refer to a specific commercial model?

In this piece, read Astra as the name for the paper's "single foundation model, frozen to the end." The point isn't what that model's identity is, but the design of keeping it frozen while changing only the surrounding system.

What do the "actions" issued to the robot actually look like?

The model picks and uses action tools and observation tools the way it would call functions. The base control supports both arms and can be used even while holding an object. Observation tools fetch only evidence, or compute geometry, without advancing the environment. The executor enforces the physical limits of the real actuators and checks whether the robot moved as commanded.

What does the paper's title, "Astra Can Act, Let It," mean?

Literally, "Astra can act, so let it." It's a title that compresses the claim that the model already has the ability to drive the robot, and that what blocks reliable manipulation is not the model but the system its actions pass through. The reading is that by letting it fix and use that system itself, "let it act" is realized.

References