History of the Skippy Project

The Skippy project began in 2010 when Morteza Azad joined the Australian National University as a PhD student, and Roy spent a one-month sabbatical at ISIR in Paris, courtesy of Prof. Vincent Hayward.  Morteza provided the energy and enthusiasm to get things going, while Roy's sabbatical gave him the chance to figure out how balancing really works, viewing it as a physical process rather than an exercise in control theory.  Over the next four years, Morteza implemented planar balancing, both on a sharp point and on a rolling contact; single hops beginning and ending in a balanced configuration; and the first example of bend-swivel balance control in 3D.

That's an impressive amount of progress for a single PhD, but it was all done in simulation.  The real challenge was to make a physical robot that could do all this stuff, and that became possible when Roy joined IIT in 2014.  At that time, IIT was a young and well-funded organization and had the necessary resources and expertise to create world-class robotic devices; so it was a sensible place to try and create Skippy.

The Skippy project got off to a good start at IIT, but then disaster struck: in 2015 Roy took on a student called J. Dri*****, which turned out to be a big mistake.  He held back progress for years, then wrote a dishonest PhD thesis in which he claimed, among other things, that his own incompetent design (a spiteful mockery of Roy's instructions and advice) was the real Skippy, and that he was the inventor of the Skippy design philosophy.

By the summer of 2018, the project had been dragged so far off course (by the bad student) that Roy decided to 'hit the reset button' and restart the project in the correct direction.  The first step in a correctly executed Skippy project is the parametric design of Skippy, which solves the following problem: in the beginning we do not have a design, but only a list of performance objectives (hop high, hop far, balance, somersault, etc.) and the task is to find a design that meets all of the objectives.  The solution is to perform a multi-objective design optimization in which the software searches a space of design and behaviour parameters looking for designs with behaviours that meet the objectives.  The result is a pareto front of designs that meet every objective, from which we can pick the one we like best and make it.

Antony Gkikakis performed this task using a commercial product called modeFRONTIER, and got his first result in August 2019.  He then proceeded to improve upon it, and this work forms the centrepiece of his PhD project.  See publications 18, 19, 20, 24, 29 and 30.  Antony's results proved that a Skippy-like robot could work, and showed that it could still work even if it was a lot heavier than the original target mass of 2kg.  Armed with Antony's results, we were ready to proceed to the next stage: the design and construction of a first prototype.

Meanwhile, Roodra Singh was doing lots of useful things, including electronics, parts selection, and shock-testing of components and subassemblies, so that we could be sure that our prototype would survive a crash landing from a substantial height.  But he was also doing good research in the areas of balancing and shock propagation.  On balancing, he made a significant improvement in Roy's balance control theory by showing how it can be generalized to allow control of passive degrees of motion freedom in addition to active ones.  The most important consequence is that it lets robots balance while controlling the absolute positions and orientations of their limbs, which is essential if they want to interact with objects in their environment.  He also worked with Justin Yim on balance controllers to allow Salto-1P to make accurate launches, and to balance after landing.  On shock propagation, he employed the concept of centre of percussion to design a leg that minimizes the propagation of mechanical shock from the foot to the torso.  See publications 16, 17 and 22; and Roy further developed the control of absolute motion in publication 26.

Another important issue that must be studied is how to balance in the presence of spring-loaded passive motion freedoms.  Skippy uses both a spring-loaded ankle and a spring in series with its main motor, and both are necessary for Skippy to reach its performance objectives.  So we need to know how these springs affect hopping and balancing performance.  This was the main topic of Juan Gamba's PhD studies.  To keep the problem simple, he focussed on a planar double pendulum with a prismatic springy leg, and found ways to balance it, to damp vibrations while balancing, to plan and execute launch motions, and to absorb the energy in the spring after landing.  See publications 21, 23, 27 and 31.

The final member of the team was Federico Allione.  By the time he arrived in 2020 the project had recovered from the effects of the bad student, and he was able to proceed immediately with the design and construction of the first prototype.  Within one year he had Skippy's head designed, built and demonstrating its ability to balance in 2D.  And within the first few months of his third year he had the rest of the robot built and operational.  With these machines Federico has been able to demonstrate balancing of a general double pendulum and balancing on a rolling contact, the latter based on Federico's generalization of Roy's balance theory to the case of a rolling contact.  He also took the lead in shock testing of the incremental and absolute shaft encoders and the bounce testing of the IMUs.  See publications 25, 28, 32, 33 and 34.  There is not (yet) any publication on Skippy's hopping, but there is a video.