SmallSatSim: A GPU-Accelerated Microgravity Robotics Toolkit for Planning, Control, and Policy Learning
Authors: David Schwartz, Alexander Hansson, Sabrina Bodmer, David Sternberg, Oliver Jia-Richards, Keenan Albee
Organizations: ETH Zürich, Rämistrasse 101, 8092 Zürich, Switzerland · Jet Propulsion Laboratory, California Institute of Technology, 4800 Oak Grove Drive, Pasadena, CA 91011, USA · University of Michigan, 500 South State Street, Ann Arbor, MI 48109, USA · University of Southern California, 3551 Trousdale Parkway, Los Angeles, CA 90089, USA
Microgravity rendezvous and close proximity operations (RPO) is a growing area of interest for applications spanning in-space assembly and manufacturing (ISAM), orbital debris remediation, and small body exploration. Developing autonomy for these operations requires integrating dynamics simulation with task definition, control and learning algorithms, robustness testing, and evaluation. We present SmallSatSim, an open-source toolkit for developing autonomy algorithms for robots operating in microgravity environments. Built on MuJoCo, SmallSatSim provides a common experiment and task abstraction for spacecraft models, planners, controllers and policies, actuator effects, disturbances, and evaluation, allowing model-based and learning-based approaches to operate on the same problem definitions. The framework combines conventional MuJoCo execution for model-based control with vectorized JAX/MJX execution for massively parallel policy learning. We demonstrate SmallSatSim through Monte Carlo experiments on model-based control under actuator perturbations, five-seed PPO and SAC training under nominal and randomized dynamics with out-of-distribution evaluation, contact-rich rendezvous and docking, and GPU scaling experiments.
Figures & tables
Systems property
SmallSatSim MuJoCo/MJX
Isaac Lab Newton
Isaac Lab PhysX
Massively parallel GPU simulation
•
•
•
JAX/XLA JIT-compilation
•
–
–
Automatic differentiation
•
∘
–
TABLE I: Comparison of selected simulation stacks for robot learning. • denotes native/full support, ∘ partial or solver-dependent support, and – no native support.
Capability
SmallSatSim
SRB
mjorbit
Basilisk / BSK-RL
Astrobee Gazebo/FSW
Physical scope
Local microgravity simulation
•
•
•
•
•
Orbit/environment simulation
–
–
•
•
–
Sensor simulation
–
•
•
•
•
Simulation systems
Accelerator-parallel simulation
•
•
•
–
–
TABLE II: Comparison of simulation and autonomy-system capabilities across representative space-robotics frameworks. • denotes a reusable framework capability, ∘ denotes a demonstrated example that is not provided as a reusable framework component, and – denotes a capability not provided or evidenced in the public framework. Per-environment randomization means that each parallel environment can use independently randomized spacecraft and actuator parameters.
Fig. 2: SmallSatSim ’s modular experiment architecture. A common task interface connects spacecraft models, planners, controllers or policies, failures, disturbances and randomization, and CPU or GPU simulation backends.
Fig. 3: Policy-learning and robustness-evaluation workflow used in our experiments. Policies are trained under nominal or randomized dynamics and evaluated on common seeded nominal, ID, OOD, and stress scenarios.
Fig. 4: Lunar Gateway inspection by Astrobee, using the NominalMPCController and MissionPlanner inspection planner.
Fig. 5: Monte Carlo robustness distributions for model-based control under actuator perturbations and disturbances.
Condition
Success
Final pos. error [m]
Final att. error [rad]
Control effort [N s]
Nominal
100/100
0.074 [0.037, 0.174]
0.229 [0.228, 0.231]
10.97 [8.48, 12.82]
Disturbance
100/100
0.068 [0.033, 0.151]
0.229 [0.227, 0.231]
10.85 [8.28, 12.92]
Faulty valve
100/100
0.076 [0.038, 0.176]
0.228 [0.222, 0.230]
11.19 [8.70, 13.05]
Saturated thrust
100/100
0.119 [0.047, 0.185]
0.229 [0.227, 0.231]
12.62 [9.28, 14.29]
Stuck-off
100/100
0.128 [0.086, 0.164]
0.230 [0.228, 0.237]
14.00 [10.91, 19.23]
Stuck-on
45/100
0.185 [0.118, 0.191]
0.263 [0.237, 0.410]
33.15 [14.37, 45.70]
TABLE III: Model-based robustness over 100 trials per condition. Errors and control effort are reported as median [Q1, Q3], where Q1 and Q3 denote the 25th and 75th percentiles.
Fig. 6: Policy learning across five training seeds and evaluation under nominal, randomized-initial-state, thrust-variation, disturbance, and combined conditions. Shaded bands show one standard deviation across training seeds; error bars show 95% Student- t confidence intervals across seeds.
Fig. 7: Rendezvous and docking with compliant contact at the Lunar Gateway.
Fig. 8: Aggregate rollout throughput with increasing numbers of parallel environments on an NVIDIA A100-SXM4-40GB GPU.
# Envs
Env Steps/s
Aggregate Sim s/s
Per-env Sim s/s
Speedup
1
4.50×103
225.1
225.1
1.0×
8
3.11×104
1556.0
194.5
6.9×
32
1.21×105
6041.8
188.8
26.8×
128
4.73×105
23635.1
184.6
105.0×
512
1.69×106
84424.3
164.9
375.1×
1024
3.30×106
164991.6
161.1
733.0×
TABLE IV: GPU rollout performance using the free-flyer dynamics backend on an NVIDIA A100-SXM4-40GB GPU. Values are means over 10 repeats.
Department of Aeronautics and Astronautics, Massachusetts Institute of Technology · Division of Robotics, Perception and Learning, KTH Royal Institute of Technology