Abstract
Every robot already carries high-resolution contact sensors: its own joints. Legged robots and humanoids exploit them to walk, run, and track whole-body motions without vision, but there the contacts are large and forceful. Is joint sensing also enough for precise, contact-rich assembly, where the robot must find a millimeter-scale opening, mesh gear teeth, or catch a thread through light contact? We study this question by training blind assembly policies that observe only a short history of joint positions, velocities, and their own actions, without visual, force, torque, or tactile sensing. The poses of both the fixture and the part are unknown to the policy, and the grasp is randomized substantially. The policy must therefore assemble the parts through contact, sensed exclusively through its own proprioception. Trained with reinforcement learning entirely in simulation over randomized parts, grasps, and contacts, such policies learn peg insertion, gear meshing, and nut threading. The peg insertion policy transfers zero-shot to the real world and inserts pegs of different shapes and sizes. Controlled comparisons with matched visual policies in simulation show that although blind policies are slower, they generalize far better to unseen part shapes and sizes. Training such policies needs thousands of different assemblies, each simulated with its clearance intact, so we also release an open-source generator that builds them procedurally from exact convex pieces for MuJoCo; it is more accurate and faster than convex decomposition or MuJoCo's signed-distance collision.
Precise assembly, felt through the joints
In all three tasks, a 7-DoF arm with a parallel-jaw gripper holds a part and must assemble it with a fixture that can sit almost anywhere in its workspace. The part's geometry, its pose in the grasp and the contact properties are randomized, but not observed by the policy. Episodes start with the part touching the fixture but misaligned, and succeed once it is fully assembled.
Probe the policies
During training, a decoder predicts task-relevant contact classes—whether the part is free, touching the opening, or inside—from the policy's latent representation. This supervision signal, labeled in simulation, helps the encoder learn to extract contact information from proprioception alone. Below, the decoder's predictions reveal what the policy infers from its history of joint positions and velocities. Each episode runs in your browser on MuJoCo (WebAssembly) at the training speeds: 1 kHz physics, 50 Hz policy.
Simulating tight insertion at scale with mjfit
Training for this robustness needs thousands of different assemblies simulated in parallel, each with its clearance intact. MuJoCo collides meshes through their convex hulls, so a concave hole must be given a signed-distance field (SDF) or built from convex pieces, which simulation benchmarks assemble from boxes by hand.
mjfit automates the hand-built hole and generalizes it to any planar outline. The plate around the hole is split into convex polygons and extruded; the peg is the hole outline offset inward by the clearance, so every peg edge sits exactly the clearance from its hole edge. Curves are tessellated by a circumscribed polygon, so the wall never intrudes into the true hole; the only error is a little extra play at the corners. Companion generators do the same for threads and gears, and a sampler draws random outlines, islands and dimensions.
Does it fit?
The automatic alternatives, convex decomposition (CoACD, V-HACD) and MuJoCo's mesh SDF, tolerate errors far larger than an assembly's clearance. As a result, off-the-shelf alternatives jam at looser tolerances than mjfit.
Faster and more accurate
Against analytic ground truth, mjfit is more accurate than every baseline at every speed, on the CPU and on the GPU with MuJoCo Warp. Each assembly is only a few dozen convex pieces, so every one of our 12,288 parallel training worlds can hold a different one.
Learning to feel the fit
At each step the actor observes its joint positions and velocities, the gripper pose and twist computed from them by forward kinematics, and its previous action. It never receives the hole pose, the part geometry, a force estimate or an image. A temporal convolution compresses the last 0.6 s of observations into a latent, and an MLP maps the latent and the current observation to joint-position increments, tracked by a joint impedance controller on an arm model identified from real-world measurements.
We train with PPO and a sparse reward. Two training-only signals speed up training without giving the actor anything privileged: an asymmetric critic that also sees the part's pose relative to the fixture, and the contact supervision above, which gives the encoder a dense signal about what the arm is touching.
Blind policies learn all three tasks
Properties of visually blind behaviors
On peg insertion, we compare the blind policy with a visual policy trained on the same task from a wrist camera, and with a scripted spiral search as a geometric baseline.
The blind policy succeeds at least as reliably as the visual one in distribution but takes longer, and it travels far less than a scripted spiral: proprioceptive feedback guides an efficient search.
The policy's history latent encodes whether the peg is lifted, searching, partly engaged or inside, in simulation and in the real world, and its actions depend on it: it acts on whether it has found the hole, not on where the hole is.
A camera sees a part's size and shape directly, so the visual policy learns what the training parts look like. Contact changes far less: the rim of a larger or narrower hole resists a push just as a training hole's does. On unseen sizes, proportions and cross-sections, the blind policy degrades gently while vision falls steeply.
Zero-shot transfer to the real world
We deploy the frozen blind peg insertion policy on a Flexiv Rizon 4S with a Robotiq 2F-85 at 50 Hz, with no real-world data or fine-tuning. It receives only encoder-derived joint state; no camera, force/torque sensor or object pose enters the policy. Each trial starts from a state drawn from the simulated reset distribution, with the peg grasped at a randomized position and tilt and touching the fixture near the hole.
BibTeX
@misc{bronars2026blindpreciseassemblyproprioceptive,
title={Blind Precise Assembly: Proprioceptive Sim-to-Real Peg-in-Hole for Diverse Parts},
author={Antonia Bronars and Younghyo Park and Kushal Kedia and Pulkit Agrawal},
year={2026},
eprint={2610.23849},
archivePrefix={arXiv},
primaryClass={cs.RO},
url={https://arxiv.org/abs/2610.23849},
}
Acknowledgments
This research was financially supported by the Ministry of Trade, Industry, and Energy (MOTIE), Korea, under the "Global Industrial Technology Cooperation Center program" supervised by the Korea Institute for Advancement of Technology (KIAT) (Grant No. P0028435).
