[Note: This project page is a repost of our first blog post describing early results on our project. In the near future, this page will be updated to a more formal project page with current work.]
Recently we got the great news that we were awarded funding from NASA's Office of Chief Technologist for the NASA Innovative Advanced Concept (NIAC) proposal "Super Ball Bot - Structures for Planetary Landing and Exploration." The proposed research revolves around a radical departure from traditional rigid robotics to "tensegrity" robots composed entirely of interlocking rods and cables. Out of more than 600 white papers originally submitted, this proposal is one out of only 18 that were funded for 2012. Tensegrities, which Buckminster Fuller helped discover, are counter-intuitive tension structures with no rigid connections and are uniquely robust, light-weight, and deployable. Co-led by Vytas SunSpiral (Intelligent Robotics Group) and Adrian Agogino (Robust Software Engineering Group), and collaborating with David Atkinson of the University of Idaho, the project is developing a mission concept where a "Super Ball Bot" bounces to a landing on a planet, then deforms itself to roll to locations of scientific interest. This combination of functions is possible because of the unique structural qualities of tensegrities which can be deployed from small volumes, are lightweight, and can absorb significant impact shocks. Thus, they can be used much like an airbag for landing on a planetary surface, and then deformed in a controlled manner to roll the spacecraft around the surface to locations of scientific interest.
These unusual structures are hard to control traditionally so Vytas and Adrian are experimenting with controlling them using machine learning algorithms and neuroscience inspired oscillatory controls known as Central Pattern Generators (CPG's). Adrian's work on multiagent systems and learning provide robust solutions to numerous complex design and control problems. These learning systems can be adaptive, and can generate control solutions to complex structures too complicated to be designed by hand. This approach is well suited for tensegrity structures which are complex non-linear systems whose control-theory is still being developed. Vytas has been researching robotic manipulation and mobility for over a decade and in recent years has been focused on the game-changing capabilities of tensegrity robots due to their unique structural properties. His quest to tap their potential has lead him to investigate oscillatory control approaches from the field of neuroscience, such as Central Pattern Generators (CPG's), which show promise for efficient control of these robots.
While the Super Ball Bot project has just started, we already have some exciting initial results from the machine learning efforts. During the last year, Vytas led the development of a physics based tensegrity simulator built on-top of the open-source Bullet Physics Engine. We have been using that simulator to explore novel tensegrity structures and control approaches, and will write a separate post about the oscillatory control of a snake-like tensegrity robot and its ability to traverse many complex terrains with fully distributed control algorithms. The following video shows two drop tests where we simulate a tensegrity robot landing. The results confirm what we see in physical models in our lab, which is that these structures do a great job absorbing impact forces, even as we vary the stiffness of the strings.
Since the NIAC proposal was awarded, we have focused on evolving the motion controls of a rolling tensegrity robot and have early simulation results which show it safely rolling through a rocky terrain.
To date, most of the research into control of tensegrity robots has focused on slow motions which do not excite the dynamics of the structure. Wanting to show that tensegrity robots can be fast and dynamic movers, we are exploring what is possible when the structure is driven at the limits of dynamic stability.
To explore the maximum speed achievable by our tensegrity robot, Adrian's intern, Atil Iscen, has been developing an evolutionary control approach where a large population of random tensegrity controllers are evaluated based on their ability to move the farthest distance within a fixed amount of time. Then, the worst performing members are eliminated from the population and the best ones are replicated and mutated, allowing the mutations of the good controllers to become even better.
Our best solutions so far evolve parameters to a distributed oscillatory controller where the lengths of groups of three cables (making a facet) are controlled by the values of a sine-wave. The job of evolution is then to control the phase offset, period, and amplitude of the sine wave for the strings. The breakthrough of this approach is that it enables fast dynamic motion, without requiring the computationally expensive modeling and analysis necessary for a centrally computed controller.
Our preliminary results show that tensegrity robots are indeed capable of fast dynamic motion, and that the evolutionary approach is successful at finding difficult to model dynamic controllers.
In the following video we show: 1) Slowly moving hand-crafted controller showing the difficulty of this problem. 2) An evolved controller showing high speed mobility 3) An evolved controller showing high speeds while handling rough terrain
While it is exciting to see such fast and dynamic motion from a tensegrity robot, rolling at the limits of stability is not the control approach we need for a space mission. When exploring another planet we need to balance the needs of making progress with concerns about energy efficiency and stability. Thus, we evolved a new controller with a tighter cap on the amount of stretch and energy available for each string. With that change we find results which appear stable and far more appropriate for exploration of a distant planet.
These results are preliminary and we expect to continue to improve the stability, energy efficiency, and terrain handling. Still, it is important to explore the upper limits of speed and dynamic performance. Further, we are establishing that evolutionary approaches are capable of parameter tuning and optimizing the performance of distributed control systems for dynamic tensegrity robots. This is important due to the deep challenges in hand crafting the dynamics of these complex and non-linear systems.
Moving forward we plan on exploring increasingly complex structures and distributed control architectures within which we will deploy our learning algorithms to tune performance. In other work we have already shown success at deploying distributed impedance control on tensegrity robots, along with compelling results from biologically inspired Central Pattern Generators (CPG's). Both of these approaches require significant amounts of hand tuning of parameters, which our learning algorithms should be able to improve upon. Beyond the evolutionary approaches used so far, we also expect to explore multiagent control.
For more information on our biologically inspired tensegrity robotics research, see this recent post about our "snake" robot.