---
kind: concept
slug: shared-autonomy
title: Shared autonomy
summary: >-
  A robot and a human both shape one command, and the robot's share is set by a fixed weight or a takeover rule. Compares a blend weight, tested in a 24-person user study of arm tracking, with a learned-motion-primitive assist that takes over a grasp on a humanoid. Covers the constraints each needs and what the results support. Both papers are author-reported with small samples.
tags: [shared-control, teleoperation, human-robot-interaction, trust, motion-primitives]
papers: ["2402.02758", "2411.01014"]
related: [teleoperation, human-in-the-loop, human-ai-collaboration, motion-primitives, quadratic-programming]
status: draft
updated_at: 2026-10-25
---

## Overview

Shared autonomy means the human and the robot both contribute to the motion the
robot executes. The human keeps some control and the robot adds help, either
continuously or over part of the task. The invariant the variants share is that
one command reaches the actuators, built from two sources, and a rule decides
how much of it comes from the robot [arxiv:2402.02758 §3.2] [arxiv:2411.01014
§2.7].

The variants differ in how that rule is set. [Pan et al.](/papers/2402.02758)
fix one robot weight for a whole trial and measure how it changes workload and
trust. [Penco et al.](/papers/2411.01014) do not blend throughout. The robot
recognises the task from the operator's first motion, adapts a learned motion to
it, and hands the grasp to a stored sequence through a short transition. The
operator then accepts or rejects a preview and moves the plan with a joystick
[arxiv:2411.01014 §2.3] [§2.7] [§3].

Two papers with cards cover the topic. Their tasks, robots and measures differ,
so their numbers cannot be ranked against each other.

## Variants

### Fixed blend weight

The human target and the robot target are combined as a convex mix. The robot
has weight gamma and the human has 1 minus gamma. Gamma of 1 is full autonomy
and gamma of 0 is none [arxiv:2402.02758 §3.2] [arxiv:2402.02758 eq. 3]. The
robot target is a precomputed trajectory, and the human target is the handle
position scaled by a constant. The main phase had four gamma values, but only
0.2 and 0.8 were analysed [arxiv:2402.02758 §3.5.1] [arxiv:2402.02758 §4]. The
paper does not explain why the other two were left out. Card: [Effects of Shared
Control on Cognitive Load and Trust in Teleoperated Trajectory
Tracking](/papers/2402.02758).

Results, author-reported, within subject with 24 people. Self-reported workload
fell and trust rose with more robot share [arxiv:2402.02758 tab. 1]
[arxiv:2402.02758 §4.2] [§4.3]. Tracking error fell from 2.16 cm to 0.83 cm
between the low and high levels [arxiv:2402.02758 tab. 2]. The dual-task tapping
measures and the pupil measure showed no clear effect [arxiv:2402.02758 §4.2].

### Learned plan with affordance takeover

The robot holds one learned probabilistic movement primitive (ProMP) per task.
Each was learned from fewer than 30 demonstrations recorded in simulation. It
picks the task whose primitive is closest to the operator's first motion, then
conditions that primitive on the motion and on the object pose [arxiv:2411.01014
§2] [§2.3] [§2.4]. Where an Affordance Template exists for the object, a logistic
weight blends from the primitive into the template's first sample. Where none
exists, the primitive runs alone [arxiv:2411.01014 §2.7] [eq. 9] [eq. 10] [§4.1].
The blend's stated end conditions cannot both hold for this logistic form with
finite parameters, so an implementation has to pick values and accept a
compromise [arxiv:2411.01014 §2.7] [eq. 10].
Card: [Mixed Reality Teleoperation Assistance for Direct Control of
Humanoids](/papers/2411.01014).

Results, author-reported. In an eight-person door-opening study, assisted
control completed all trials. Direct control completed 75.0% for experts and
58.3% for novices, and assisted runs took about half the time [arxiv:2411.01014
tab. 2] [§4.2]. The study ran no statistical tests. The punching evaluation gave
a left-hand RMS difference of 2.35 cm, but it compared the adapted primitive with
the same user's trajectory, with no baseline [arxiv:2411.01014 tab. 1] [§4.1].

## When to use which

| Situation | Use | Why |
|---|---|---|
| You have a reference trajectory and need one tunable knob, with no demonstrations | Fixed blend weight | Only a reference and a scalar are needed [arxiv:2402.02758 §3.2] |
| You want to measure how much help changes operator workload or trust | Fixed blend weight | It is the only one of the two with a load and trust study across levels [arxiv:2402.02758 §4.2] [§4.3] |
| A humanoid must repeat a grasp-like sub-task with a known object | Learned plan with takeover | It adapts to how the operator starts the motion [arxiv:2411.01014 §2.3] [§2.4] |
| You can model the object and build an affordance for it | Learned plan with takeover | The blend needs an Affordance Template per object [arxiv:2411.01014 §2.6] [§2.7] |
| You cannot record simulated demonstrations or build a whole-body controller | Neither as written | The learned plan needs demonstrations, markers and a QP controller, and its gains are not stated [arxiv:2411.01014 §2.5] [§2.8] |

Evidence strength differs. The blend study has 24 participants and reports
tests. The learned plan has 8 participants and no tests, so its speed and
completion gains are not established by the paper. Do not combine their numbers.

## Implementation sketch

The fixed blend is one line per control step. The takeover needs a
task-selection step and a blend into a stored sequence. Constants in the second
block are not stated in the paper and must be chosen.

```pseudocode
# Fixed blend, once per control step  [arxiv:2402.02758 eq. 3]
# Input:  gamma in [0, 1] (robot weight); robot_target, human_target (3,)
# Output: commanded end-effector position (3,)
def blend(gamma, robot_target, human_target):
    # gamma = 1 is full autonomy, gamma = 0 is none  [arxiv:2402.02758 §3.2]
    return gamma * robot_target + (1 - gamma) * human_target
```

```pseudocode
# Learned plan with takeover  [arxiv:2411.01014 §2.3-§2.7]
# Input:  primitives (one per task); first_motion; object_pose; template
# Output: reference trajectory
def assist(primitives, first_motion, object_pose, template):
    # Pick the task whose primitive best matches the early motion  [§2.3]
    task = closest_primitive(primitives, first_motion)
    # Condition on the observed motion and the object pose  [§2.4]
    plan = condition(task, first_motion, object_pose)
    if template is None:
        # No affordance: the primitive runs alone  [§4.1]
        return plan
    # Logistic weight; a, b, c are not stated in the paper  [arxiv:2411.01014 eq. 10]
    # Mix primitive samples into the template's first sample  [arxiv:2411.01014 eq. 9]
    return blend_into(plan, template.first_sample)
```

## Contradictions

None known between the two papers. They study different tasks and report
different measures [arxiv:2402.02758 §3] [arxiv:2411.01014 §4].

Within one paper, the self-reported workload result in the blend study did not
appear in the dual-task and pupil measures [arxiv:2402.02758 §4.2].

## Papers

- [Effects of Shared Control on Cognitive Load and Trust in Teleoperated Trajectory Tracking](/papers/2402.02758): a fixed robot-weight blend, tested in a 24-person study of workload and trust.
- [Mixed Reality Teleoperation Assistance for Direct Control of Humanoids](/papers/2411.01014): learned movement primitives with an affordance-template takeover on a humanoid, tested with eight people.
