The modular snake robots in Carnegie Mellon’s Biorobotics lab provide an intriguing platform for research: they have already been shown to excel at a variety of locomotive tasks and have incredible potential for navigating complex terrains, but much of that potential remains untapped. Unfortunately, many techniques commonly used in robotics prove inapplicable to these snake robots. This is because of the robots complex, multi-modal locomotion dynamics, which are difficult to model, and their small size and frequent impacts, which preclude addition of many standard sensors.
The motivation to expand the capabilities of these robots stems from experiencing several failures and limitations in real world tests. In an archaeological expedition near the Red Sea, the robot was able to move further than a human could into a collapsed cave containing four-millenia-old ship timbers. However, a gradual sandy slope prevented the robot from moving further and potentially making an archaeological discovery. At a disaster response training site, the robot was able to navigate a narrow passage underneath a rubble pile, but was unable to pass over a four inch high piece of wood which lay across its path once the passage widened.
This thesis addresses the improvement of these capabilities through the optimization of functions which are expensive (requiring significant time, money, computation, or other resources), black-box (providing no gradient or derivative information), need not be convex or linear, and may have many local optima. Objectives evaluated through tests on physical robotic systems often fit these categories.
Several approaches are derived and tested for optimization of snake robot gait motion, leading to improved locomotion across flat and sloped terrain. Additional unique challenges posed by robotic systems are addressed, including stochasticity in the objective, consideration of multiple conflicting objectives, and the desire to adapt to changing environments.
Although gaits are the motion of choice for traversing long distances over uniform terrain, real-world environments will rarely be completely uniform. Instead, complex motions also must be learned and optimized that enable navigation over complex terrain and large obstacles. To address this challenge, I describe an approach to record, simplify, and parameterize demonstrated trajectories from expert and novice users. As the settings which require such motions usually can only quantify the result of the motion in terms of success and failure rather than a numerical score, I derive extensions to the optimization framework used for improving gaits to handle stochastic binary functions, and use this to optimize robustness of trajectories for moving over obstacles.
Overall, these algorithms allow snake robot locomotion through any type of environment to be optimized. Furthermore, the generality inherent in the black-box approach allows these techniques to be applicable to a wide variety of problems in robotics.