The AY-Robots policy comparison table listing GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA and ACT with parameters, GPU tier, inference latency and minimum episodes
Imitation LearningReinforcement LearningHIL-SERLBehaviour CloningPolicy Training

Imitation Learning vs Reinforcement Learning for Robot Arms

AY-Robots ResearchAugust 23, 202624 min read

Almost every manipulation policy that works today is behaviour cloning. Here is the proven flaw in that, what reinforcement learning still wins on real hardware, and the hybrid people run.

Open any of the five policies you can train on this platform and look at how it was made. ACT learns from 50 teleoperated episodes. SmolVLA, Pi0.5 and GR00T N1.7 are pretrained on large piles of human demonstrations and then fine-tuned on yours. Not one of them has a reward function. Not one of them ever tries something, fails, and updates on the failure. Every policy you can realistically put on a low-cost arm this year is trained by imitation learning.

That is not because reinforcement learning does not work on robots. It works, and on some tasks it beats imitation by a wide margin. It is because the bill is different. This article puts the two side by side with numbers from the papers, explains the one thing behaviour cloning provably gets wrong, and walks the hybrid loop that people actually run on a real arm today. Everything about lerobot below was checked against the v0.6.1 sources and the current LeRobot documentation, and every paper number was read out of the paper rather than out of a summary.

What you need to know

  • Imitation learning needs demonstrations and no reward function. Reinforcement learning needs a reward function, resets, and far more interaction with the world.
  • Behaviour cloning has a proven failure mode: Ross, Gordon and Bagnell show the extra cost of a policy with error rate e grows as T squared times e in the episode length T, and that the bound is tight.
  • Published real-world RL from scratch is expensive: 800,000 grasp attempts over two months (Levine 2016), 580,000 grasps across 7 robots and about 800 robot hours (QT-Opt), 13 thousand simulated years for one Rubik's cube hand.
  • Where RL wins is the last stretch of reliability. HIL-SERL reports 100 percent success on all 13 tasks in its results table, against 49.7 percent for the behaviour-cloning baselines and 1.8x faster cycle times. Training took 1 to 2.5 hours on the robot for almost all of those tasks; the timing belt assembly took 6.
  • The same paper's ablation without demonstrations or human corrections scored 0 percent on all three tasks it was run on, and with demonstrations but no corrections it averaged 49 percent. Pure RL from scratch on a real arm is still not a thing you should plan a weekend around.
  • AY-Robots trains imitation policies only. There is no RL trainer here. The honest hybrid on this platform is imitation plus targeted corrective data, and that is covered below.

The difference is what you have to supply

Both approaches end with the same artifact: a checkpoint that maps camera images and joint states to the next action. What differs is the supervision you have to produce before training can start.

Imitation learningReinforcement learning
You supplyDemonstrations of the task done correctlyA reward function, a reset procedure, and a safe action space
Data sourceA human driving the arm through teleoperationThe policy's own attempts, most of which fail
What is optimisedMatch the human action at each observed stateMaximise expected return over the episode
Interaction with the real robotOnly during recordingContinuously during training
Fails whenThe robot reaches a state no human ever demonstratedThe reward is wrong, sparse, or gameable
Typical data volume on a low-cost arm30 to 50 episodesTens of thousands of transitions, or millions in simulation
Can exceed the humanNo, it is bounded by the demonstrationsYes, that is the point

That last row is the whole argument for RL, and the second row is the whole argument against it. A demonstration dataset is finite work: you sit down, drive the arm, and stop. An RL run is open-ended interaction with a physical machine that is, by construction, mostly doing the task wrong.

Terminology, because the words are used loosely

Behaviour cloning (BC) is plain supervised learning on state-action pairs. Imitation learning is the wider family that also includes inverse RL and interactive methods such as DAgger. Offline RL trains from a fixed dataset using a reward signal, so it is neither BC nor online RL. Everything trainable on this platform is behaviour cloning, including the diffusion and flow-matching heads, which are still fitting the demonstration distribution rather than optimising a return.

Why imitation won the last three years

The short version: demonstrations turned out to scale better than reward engineering. Once action chunking and generative action heads made short demonstration sets usable, the field stopped fighting reward functions and started collecting data.

SystemPublishedTraining signalNumber worth remembering
ACT (ALOHA)Apr 2023Behaviour cloning50 demonstrations per task at 50 Hz, 80 to 90 percent on 6 fine manipulation tasks from about 10 minutes of demonstrations
Diffusion PolicyMar 2023Behaviour cloning46.9 percent average improvement across 12 tasks from 4 benchmarks
Open X-Embodiment / RT-XOct 2023Behaviour cloningPooled demonstration data across many robot embodiments
pi0Oct 2024Behaviour cloning, flow matchingVLM backbone plus a flow-matching action expert
GR00T N1Mar 2025Behaviour cloning, diffusion headOpen foundation model, fine-tuned on your demonstrations
pi0.5Apr 2025Behaviour cloningOpen-world generalisation from heterogeneous demonstration data
SmolVLAJun 2025Behaviour cloningCompact VLA aimed at affordable hardware

Every row is imitation. The differences between them are architectural, not about the learning signal: flow matching versus diffusion versus a plain transformer regressor. If you want the head-to-head on the five you can train here, the policy comparison has params, GPU tier and inference latency in one table.

The AY-Robots policy comparison table showing GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA and ACT with parameters, GPU tier, inference latency and minimum episodes
The five trainable policies. Different architectures, different latencies, one learning signal: all five are fitted to human demonstrations.

What behaviour cloning provably gets wrong

There is one failure mode that is not an engineering bug and cannot be fixed with more of the same data. A behaviour-cloned policy is trained on the distribution of states a human visits. At run time it visits its own distribution. Every small error moves it slightly off the demonstrated manifold, where its next prediction is slightly worse, which moves it further off.

text
Ross, Gordon and Bagnell (2011), Theorem 2.1
credited in that paper to Ross and Bagnell (2010):

  if  E_{s ~ d_pi*} [ loss(s, pi) ] = e
  then  J(pi) <= J(pi*) + T^2 * e

  T = episode length in steps
  e = per-step 0-1 loss against the expert

  "Note that this bound is tight" - the extra cost really can grow
  quadratically in T, and behaves as Theta(T^2 * e) for small e.
The compounding-error bound from the DAgger paper (arXiv 1011.0686), Theorem 2.1.

Put numbers on it. A 30-second episode recorded at 30 Hz is T = 900 steps. A per-step error rate of one in a thousand is a very good policy by supervised-learning standards, and the bound still allows an extra cost of 900 squared times 0.001, which is far more than the total cost of the task. The bound is worst case, not typical case, but the shape is right, and it explains something every practitioner has seen: policies that look excellent on held-out validation loss and still stall halfway through the real task. That specific symptom has its own page under loss falls, policy does nothing.

This is why more demonstrations of the same thing stop helping

If your policy fails at the same point every time, recording another 50 clean episodes of the correct trajectory adds almost nothing, because none of them contain the state the policy is actually in when it fails. The data you need is recovery data: the arm in the wrong place, being driven back. Neither DAgger nor RL is magic here. They are both just ways of getting training data from the states your policy visits instead of the states you visit.

What reinforcement learning costs on real hardware

RL fixes the distribution problem by definition: it trains on its own state distribution. The price is interaction. These are the published figures, not estimates.

ResultYearInteraction requiredOutcome
Levine et al., hand-eye coordination for grasping2016Over 800,000 grasp attempts over two months, using between 6 and 14 manipulators at a timeReal-time closed-loop grasping of novel objects
QT-Opt2018580,000 real-world grasp attempts, 7 robots, about 800 robot hours, collected over four months96 percent grasp success on unseen objects
OpenAI, Solving Rubik's Cube with a Robot Hand201964 V100 GPUs and 920 worker machines of 32 CPU cores, roughly 13 thousand years of simulated experienceBest policy applied a full fair scramble in 2 of 10 real trials (20 percent), half scramble 60 percent, using a sensor-equipped cube for face angles
HIL-SERL20241 to 2.5 hours on the real robot for almost all tasks (6 hours for the timing belt), one RTX 4090, 20 to 30 demonstrations, human interventions100 percent success on all 13 tasks in the results table

The Rubik's cube row is the one people misremember. That policy is a real achievement, and it solved a fully scrambled cube in 2 of 10 real trials after months of continuous training at a scale of compute that no individual has. It is also worth reading the table it comes from: the 20 percent full-scramble and 60 percent half-scramble figures are for the variant that reads face angles from a sensor-equipped cube. The same policy reading face angles from vision alone managed 0 percent on the full scramble and 20 percent on the half. Simulation-first RL is a real strategy, and GPU-parallel simulators have made the sample cost much less frightening than it was in 2019. But sim-to-real for contact-rich manipulation on a 110 to 150 EUR arm with unmodelled backlash is a research project, not a Saturday.

The reward function is the hidden cost, not the sample count

Sample efficiency gets the headlines, but on a real arm the thing that eats the week is the reward. You need an automatic, reliable signal for did the task just succeed, evaluated every step, without a human in the loop. HIL-SERL solves this by training a binary vision classifier per task and reports accuracy greater than 95 percent on its evaluation set. Getting there means collecting labelled success and failure images, then collecting more to kill the false positives. The lerobot docs do let you skip it for a first round by annotating success by hand with a gamepad or keyboard, but that puts a person back in the loop for every episode. Budget for the classifier before you budget for GPU hours.

What RL still wins, with the numbers

The honest answer is: the last stretch of reliability on contact-rich, tight-tolerance tasks, and cycle time. HIL-SERL (Luo, Xu, Wu and Levine, arXiv 2410.21845) is the cleanest published comparison because the imitation baselines were trained on the same amount of human data as the RL runs: the same number of demonstration episodes and interventions, on the same tasks and the same hardware.

TaskBC / HG-DAgger successHIL-SERL successCycle time BCCycle time RL
RAM insertion29 percent100 percent8.3 s4.8 s
USB grasp and insertion26 percent100 percent13.4 s6.7 s
Timing belt assembly2 percent100 percent9.1 s7.2 s
Car dashboard assembly41 percent100 percent20.3 s8.8 s
IKEA top panel35 percent100 percent8.9 s2.4 s
Average over all tasks49.7 percent100 percent9.6 s5.4 s (1.8x faster)

The paper's second table is the one that should change how you plan a project, because it prices each ingredient separately. Read the bottom three rows as a ladder: strip the interventions and the system loses half its success rate, strip the demonstrations too and it learns nothing at all.

Method on 3 selected tasksRAM insertionDashboard assemblyObject flippingAverage
Diffusion Policy (200 demos)27 percent18 percent56 percent34 percent
HG-DAgger (same episodes as RL)29 percent41 percent46 percent39 percent
Behaviour cloning (200 demos)12 percent35 percent46 percent31 percent
IBRL75 percent0 percent95 percent57 percent
Residual RL0 percent0 percent97 percent32 percent
DAPG8 percent18 percent72 percent33 percent
HIL-SERL, no demos and no interventions0 percent0 percent0 percent0 percent
HIL-SERL, demos but no interventions48 percent0 percent100 percent49 percent
HIL-SERL, full100 percent100 percent100 percent100 percent

Two details in that paper matter more than the headline. First, the RL policies are faster than the human demonstrations they started from, which no imitation method can be. Second, the ablation: the same system started without demonstrations and without human corrections scored 0 percent on all three tasks it was evaluated on, and with demonstrations but no corrections it averaged 49 percent. The interventions are not a convenience feature. They are the reason it works at all.

Reinforcement learning on a real arm
What you get
  • Trains on the states the policy actually visits, so the compounding-error problem does not apply
  • Can beat the demonstrator on speed and on reliability, not just match it
  • Handles contact-rich, tight-tolerance insertion where behaviour cloning plateaus in the 20 to 40 percent range
  • Improves continuously as long as the robot keeps running, rather than being frozen at the dataset
What it costs
  • You need an automatic success detector to run unattended, and building one is its own labelling project
  • You must build a reset procedure, because the robot will need thousands of them
  • The learner has to sit next to the robot: the loop runs at 10 Hz with weight pushes every few seconds
  • Long-horizon tasks are out of scope as single policies. The multi-stage assemblies in the paper were split into subtasks, each trained separately and chained with scripted transition motions
  • A human has to sit there and intervene for the first hour or two, which is not less operator time than recording demonstrations
  • The published gains are on short, well-bounded tasks. Reported RL cycle times run from 2.4 to 13.6 seconds per attempt, and the lerobot guidance repeats the point: keep the task inside 5 to 10 seconds
The AY-Robots arena leaderboard, a sortable table of 85 vision-language-action models with 332 benchmark results, each value linked to its source paper or model card
The arena: 85 VLA models, 332 benchmark results. Sort by anything you like. Almost every entry is a behaviour-cloned policy, which tells you where the field has actually put its effort.

The hybrid that people actually run: human-in-the-loop RL

The working recipe in 2026 is not RL versus imitation. It is imitation first, then a small amount of on-robot RL with a human ready to take over. lerobot ships an implementation of HIL-SERL, and it supports SO-100 class arms. The algorithm underneath is SAC with offline demonstration data mixed into every batch, following RLPD.

  1. 1
    Install the RL extra

    The HIL-SERL code lives behind its own extra. You also need an NVIDIA GPU and a URDF for your arm, because the whole loop runs in end-effector space and needs inverse kinematics.

    bash
    pip install -e ".[hilserl]"
  2. 2
    Find safe end-effector bounds

    Bounding the workspace is not a safety nicety, it is what makes the exploration problem small enough to solve. Move the arm through the region that solves the task and record the extremes.

    bash
    lerobot-find-joint-limits \
      --robot.type=so100_follower \
      --robot.port=/dev/tty.usbmodem58760431541 \
      --robot.id=black \
      --teleop.type=so100_leader \
      --teleop.port=/dev/tty.usbmodem58760431551 \
      --teleop.id=blue
  3. 3
    Record a handful of demonstrations

    Set mode to record in the env config and drive the task. HIL-SERL is seeded with demonstrations, not started cold. The paper keeps a separate demo buffer, usually 20 to 30 episodes per task, and samples from it in every training batch.

    bash
    python -m lerobot.rl.gym_manipulator \
      --config_path src/lerobot/configs/env_config_so100.json
  4. 4
    Crop the camera views

    Visual RL is far more distraction-sensitive than behaviour cloning. Crop each view down to the workspace and resize to 128x128, which is the resolution the policies here were validated on.

    bash
    python -m lerobot.rl.crop_dataset_roi --repo-id username/pick_lift_cube
  5. 5
    Train the reward classifier

    This is the success detector. It is a small CNN on top of a pretrained vision model, helper2424/resnet10 in the reference config, with num_classes set to 2 for binary success and failure. Collect the labelling dataset with terminate_on_success set to false so the episodes keep running past the first success and you get enough positive frames.

    bash
    lerobot-train \
      --config_path path/to/reward_classifier_train_config.json
  6. 6
    Start the learner, then the actor

    Two processes, talking over gRPC. The learner holds the replay buffers and does gradient steps; the actor drives the robot and streams transitions back. Run both on the machine next to the arm.

    bash
    # terminal 1
    python -m lerobot.rl.learner \
      --config_path src/lerobot/configs/train_config_hilserl_so100.json
    
    # terminal 2
    python -m lerobot.rl.actor \
      --config_path src/lerobot/configs/train_config_hilserl_so100.json
  7. 7
    Intervene, then intervene less

    Press the gamepad trigger (or space on the keyboard) to take over, and again to hand control back. A run is going well when your intervention rate falls over time. If it does not fall, stop and fix the reward classifier or the bounds rather than training longer.

    bash
    # watch the intervention rate in the wandb dashboard
    # a healthy run: high at the start, near zero by the end
Two traps that eat a day each

The leader arm you take over with matters. The lerobot docs are explicit: the SO101 leader has reduced gears that let it track the follower during exploration, so taking over is much smoother than with the gearless SO100 leader. If you are buying hardware specifically to run this loop, read SO-100 versus SO-101 first. And the environment loop is 10 Hz. That is the default fps in HILSerlRobotEnvConfig, and in the paper those 10 Hz setpoints feed an impedance controller running at 1000 Hz underneath. The learner pushes fresh weights to the actor every 4 seconds by default, and the docs warn that a slow connection costs sample efficiency. Anything that adds public-internet round trips to that loop breaks it.

The defaults are worth comparing directly against the imitation trainer defaults this platform sends, because they are a different kind of number entirely. Imitation training is a batch job with a step count. RL training is a control loop with a discount factor.

Knoblerobot SAC default (v0.6.1)Imitation equivalent on AY-Robots
Actor learning rate3e-4ACT: 1e-5, SmolVLA: 1e-4, GR00T N1.7: 1e-4
Critic learning rate3e-4no critic exists
Discount0.99no discount exists
Number of critics2no critic exists
Update-to-data ratio1not applicable, data is fixed
Gradient clip norm40.0not exposed in the training form
Initial temperature1.0 (docs suggest starting at 1e-2)no exploration term exists
Run lengthuntil you stop itACT: 100000 steps, GR00T N1.7 and SmolVLA: 20000, Pi0.5: 30000

The cheaper hybrid: corrections without any RL

If you do not want to build a reward classifier, there is a middle path that captures most of the distribution-shift fix and none of the reward engineering. Run the trained policy, let a human take over when it is about to fail, record the recovery, and fine-tune on the combined dataset. That is HG-DAgger, and lerobot exposes it as a rollout strategy.

bash
lerobot-rollout --strategy.type=dagger \
  --robot.type=so100_follower \
  --robot.port=/dev/ttyACM1 \
  --robot.cameras='{ front: {type: opencv, index_or_path: 0, width: 640, height: 480, fps: 30} }' \
  --teleop.type=so101_leader \
  --teleop.port=/dev/ttyACM0 \
  --policy.path=outputs/pretrain/checkpoints/last/pretrained_model \
  --dataset.repo_id=${HF_USER}/rollout_hil_dataset \
  --dataset.single_task="Put the cube in the bin" \
  --dataset.fps=30 \
  --strategy.num_episodes=50
lerobot v0.6.1. The registered teleoperator types are so100_leader and so101_leader, not so_leader, which is only the module name. Add --inference.type=rtc when the policy is Pi0, Pi0.5 or SmolVLA, so the slow action chunks stitch together smoothly.
--strategy.typeWhat it doesWhen you want it
baseAutonomous rollout, nothing recordedA quick look at whether the checkpoint moves at all
episodicEpisode-oriented recording with reset phases between episodesScored evaluation runs you want to keep
sentryContinuous recording with auto-uploadLeaving it running and harvesting everything
highlightRing-buffer recording, saved on a keystrokeCatching a rare failure you cannot reproduce on demand
daggerHuman-in-the-loop collection: pause, take over, hand backThe correction loop described here

The loop is pause, take over, drive back to a state the policy understands, correct, hand control back, all inside one continuous episode with no reset. Both the autonomous and the human segments are recorded, so the LeRobot dataset that comes out contains exactly the recovery behaviour the original demonstrations lacked. Then you fine-tune on the merged set and go again.

This is what the frontier labs are doing too

Physical Intelligence's RECAP (RL with Experience and Corrections via Advantage-conditioned Policies, arXiv 2511.14759, November 2025) is the same three-stage shape at a much larger scale: demonstrations, then expert corrections on the model's own failures, then RL on autonomous trials. They report that it more than doubles task throughput and roughly halves the failure rate on their hardest tasks. The structure of the fix is identical to what you can run on an SO-100 in an afternoon. Only the compute differs.

Two variants published in 2024 and 2025 are worth knowing if you go further. RLDG (arXiv 2412.09858) uses RL to generate the fine-tuning data and then distills it into a generalist policy, reporting up to 40 percent higher success rates than the same policy fine-tuned on human demonstrations. ConRFT (arXiv 2502.05450) fine-tunes a VLA with an offline stage that mixes behaviour cloning with Q-learning, then an online stage with human interventions, and reports 96.3 percent average success across eight real-world tasks after 45 to 90 minutes of online fine-tuning. Both are hybrids. Neither is RL from scratch.

Do it yourself, or do it here

The full local path, if you have the arm on your desk and an NVIDIA GPU in the same room.

  1. Install lerobot with the hilserl extra and confirm you have a URDF for your arm.
  2. Record 30 to 50 demonstrations with lerobot-record, then train an imitation baseline with lerobot-train --policy.type=act. This is your floor.
  3. Run the baseline with lerobot-rollout --strategy.type=base and write down exactly where it fails.
  4. If it fails from distribution shift, collect corrections with --strategy.type=dagger and fine-tune. Cheapest fix, no reward function needed.
  5. If it fails because the task needs precision the demonstrations never had, build the reward classifier and run the HIL-SERL learner and actor.
bash
# the imitation baseline first, always
lerobot-train \
  --dataset.repo_id=${HF_USER}/so101_test \
  --policy.type=act \
  --output_dir=outputs/train/act_so101_test \
  --job_name=act_so101_test \
  --policy.device=cuda \
  --wandb.enable=true

What you own: everything. What you pay for: a GPU on your desk, the URDF work, the reward classifier, and a reset fixture. The HIL-SERL paper's own numbers came off a single RTX 4090, so the compute is not the barrier. The plumbing is.

Where this platform does not help you

Being blunt about it, because the gap is structural rather than a missing feature flag. AY-Robots trains five policies, all by imitation. There is no reward classifier trainer, no replay buffer, no actor-learner split, and no way to express a return.

The latency wall is the real reason, not a product decision

The HIL-SERL environment loop runs at 10 Hz with the learner on the same network as the robot. Inference here runs on a cloud pod, and the honest control-loop budget is 20 to 485 ms per action step depending on the model, before any public-internet round trip is added. That is workable for slow pick-and-place and it is not workable for a closed-loop RL actor or for fast reactive motion. If you want RL on your arm, the learner has to be in the room with the arm. See inference latency for what that budget is made of.

What the platform does do well for the hybrid story: it gets you the demonstration dataset and the imitation baseline cheaply and repeatably, which is the required first stage of every hybrid method above. HIL-SERL needs 20 demonstrations before it starts. ConRFT needs an offline stage. RECAP starts from demonstrations. None of them start from nothing, and the recording workflow plus the first training run is the cheapest way to get that stage done.

The AY-Robots glossary entry for the LeRobot dataset format, describing episodes, camera streams and joint states
Both halves of the hybrid speak the same format. The corrections you collect with the DAgger rollout strategy land in the same LeRobot dataset structure as your original demonstrations.

How to choose, in one table

Read this top to bottom and stop at the first row that matches your situation. Most people stop in the first three.

Your situationWhat to doWhy
No policy yetRecord 30 to 50 episodes, train ACT or SmolVLAYou have nothing to improve until you have a baseline, and this is the cheapest baseline
Policy works sometimes, fails in the same placeCollect corrections with the DAgger rollout strategy, fine-tuneClassic distribution shift. No reward function required
Policy generalises badly to a new table or new lightingMore varied demonstrations, not RLThis is a data coverage problem, and RL does not fix coverage
Policy is reliable but slowOn-robot RL is the only thing that beats the demonstrator's speedImitation is bounded by the demonstrations by construction
Task needs sub-millimetre insertion, BC plateaus at 20 to 40 percentHIL-SERL on local hardwareThis is exactly the regime where the published gap is largest
You want a policy that improves while it runs in productionHybrid: log rollouts, correct, fine-tune on a scheduleThat loop is what RECAP does at scale and what you can approximate cheaply
You have no robotDrive one at /live, compare models in the arenaBoth cost nothing and neither needs a signup

Two of those rows are free to act on right now. The live arm is a real SO-100 streaming in the browser with no signup, queue-based, and the arena holds 85 VLA models with 332 benchmark results, each value linked to its own paper or model card. If you are still deciding whether to buy hardware at all, the three ways to start lays out what each path costs before you commit.

One thing that does not appear in that table: choosing RL because it sounds more principled. The reason vision-language-action models are trained by imitation is not intellectual laziness. It is that a demonstration is a dense, unambiguous supervision signal that a person can produce at 30 Hz by moving their hand, and no one has found anything comparably cheap on the reward side. If you want the longer version of that argument, the VLA overview and the BridgeData V2 breakdown of which imitation and offline RL methods actually work both go deeper.

Five policies, compared with numbers you can check

All five are trained by imitation. Parameters, GPU tier, inference latency per action step and the minimum episode count for each, side by side.

Compare the policies
Is reinforcement learning better than imitation learning for robot arms?

Not in general. On contact-rich precision tasks where behaviour cloning plateaus, published human-in-the-loop RL reaches 100 percent success against 49.7 percent for the imitation baselines and 1.8x faster cycle times (HIL-SERL, arXiv 2410.21845). But that system is seeded with a demo buffer of 20 to 30 episodes and with human corrections. The same system without demonstrations or corrections scored 0 percent on all three tasks it was ablated on. Imitation is the default because it needs no reward function and no resets, and because a person can produce demonstrations at 30 Hz by moving their hand.

Can I train a policy with reinforcement learning on AY-Robots?

No. All five trainable policies here (GR00T N1.7, GR00T N1.5, Pi0.5, SmolVLA, ACT) are trained by imitation from a LeRobot dataset. There is no reward function, no replay buffer and no actor-learner loop in the platform. The practical reason is latency: an on-robot RL actor runs a 10 Hz closed loop with the learner on the same network, and inference here runs on a cloud pod at 20 to 485 ms per action step before any internet round trip. Use the platform for the demonstration dataset and the imitation baseline, then run the RL loop locally with lerobot if you need it.

Why does my behaviour-cloned policy fail even though the training loss is low?

Because training loss is measured on the human's state distribution and the policy runs on its own. Ross, Gordon and Bagnell prove that a policy with per-step error e can accumulate extra cost growing as T squared times e over an episode of T steps, and that the bound is tight. Recording more clean demonstrations of the correct trajectory does not help, because they contain none of the states the policy visits when it goes wrong. Collect recovery data instead.

How many demonstrations do I need before adding RL or corrections?

Enough for a working baseline first. On this platform the minimum is 50 episodes for ACT, GR00T N1.7, GR00T N1.5 and Pi0.5, and 30 for SmolVLA. The lerobot imitation tutorial suggests at least 50 episodes with 10 per object location for a grasp-and-place task. HIL-SERL keeps a demo buffer of 20 to 30 episodes per task and samples from it in every batch. Train the baseline, see where it fails, then decide whether the failure is a coverage problem (more data), a distribution-shift problem (corrections) or a precision problem (RL).

What is the cheapest hybrid I can actually run this week?

Imitation plus HG-DAgger-style corrections. Train ACT or SmolVLA on your dataset, then run lerobot-rollout with --strategy.type=dagger, take over with the leader arm whenever the policy is about to fail, and fine-tune on the merged dataset. It needs no reward classifier, no URDF-based inverse kinematics and no critic. The SO101 leader is noticeably better for this than the SO100 leader because its reduced gears let it track the follower during autonomous execution. Note the teleoperator type on the command line is so101_leader or so100_leader.

Does simulation make reinforcement learning practical for a low-cost arm?

It removes the sample-cost objection and replaces it with a modelling objection. GPU-parallel simulators make millions of transitions cheap, but the OpenAI Rubik's cube result is the cautionary datapoint: roughly 13 thousand simulated years on 64 V100 GPUs and 920 worker machines produced a policy that completed a full fair scramble in 2 of 10 real trials, and that was the variant reading face angles from a sensor-equipped cube rather than from vision. Contact-rich manipulation on a 7.4 V hobby-servo arm with unmodelled backlash and compliance is exactly the regime where the sim-to-real gap is worst.

Ready for high-quality robotics data?

AY-Robots connects your robots to skilled operators worldwide.

Get Started