  Many robots move through the world by composing locomotion primitives like
steps and turns. To do so well, robots need not have primitives that make
intuitive sense to humans. This becomes of paramount importance when robots are
damaged and no longer move as designed. Here we propose a goal function we call
"coverage", that represents the usefulness of a library of locomotion
primitives in a manner agnostic to the particulars of the primitives
themselves. We demonstrate the ability to optimize coverage on both simulated
and physical robots, and show that coverage can be rapidly recovered after
injury. This suggests that by optimizing for coverage, robots can sustain their
ability to navigate through the world even in the face of significant
mechanical failures. The benefits of this approach are enhanced by
sample-efficient, data-driven approaches to system identification that can
rapidly inform the optimization of primitives. We found that the number of
degrees of freedom improved the rate of recovery of our simulated robots, a
rare result in the fields of gait optimization and reinforcement learning. We
showed that a robot with limbs made of tree branches (for which no CAD model or
first principles model was available) is able to quickly find an effective
high-coverage library of motion primitives. The optimized primitives are
entirely non-obvious to a human observer, and thus are unlikely to be
attainable through manual tuning.
