1 / 14

Stable Gait Transitions While Changing Speeds on a RHex-like Platform

Stable Gait Transitions While Changing Speeds on a RHex-like Platform. Dalton Banks and Matthew Hale March 1, 2011 ESE 313. Desired Behavior.

oralee
Download Presentation

Stable Gait Transitions While Changing Speeds on a RHex-like Platform

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Stable Gait Transitions While Changing Speeds on a RHex-like Platform Dalton Banks and Matthew Hale March 1, 2011 ESE 313

  2. Desired Behavior • In any real-world application of robots, it is logical that a robot will be commanded to move at different speeds to accommodate the terrain or obstacles in its environment • We want robots to make stable transitions between different speeds • In robotics, there is frequently an Implicit constraint: robots should move at (roughly) optimal efficiency due to limited onboard resources • Ensuring the efficiency of a gait usually requires changing all of the robot’s gait parameters, so we want a robot to change its entire gait as it changes its leg speed parameter so that the robot moves efficiently at each speed

  3. Present Unavailability • Past and present research into gait transitions is largely motivated by changing between terrains rather than changing between speeds [1] • For example, RHex robots often use one set of gait parameters for a terrain and then change speeds simply by scaling the leg rotation frequency • The issue of changing gaits while changing speeds is un(der)explored in the literature 1. G. Clark Haynes and Alfred A. Rizzi, "Gaits and Gait Transitions for Legged Robots", Proceedings of the 2006 IEEE International Conference on Robotics and Automation

  4. Desirability of Bioinspiration • It is believed that animals transition between gaits as they change speeds in order to minimize the energetic cost of locomotion [1] • In certain speed regimes, energy-optimized gaits form a “kinematic continuum” [2] • We believe that stable speed transitions can be made along a continuum of efficient gaits http://visual.merriam-webster.com/animal-kingdom/ungulate-mammals/horse/gaits_1.php 1. Wickler SJ, Hoyt DF, Cogger EA, Myers G., "The energetics of the trot-gallop transition", Journal of Experimental Biology, May 2003 2. Robilliard JJ, Pfau T, Wilson AM., "Gait characterisation and classification in horses", Journal of Experimental Biology, January 2007

  5. The Idea • First, we will optimize robot gaits for efficiency over a range of leg speeds using the Nelder-Mead descent algorithm [1] • Due to experimental and theoretical considerations this has formed the bulk of the work done for this project • Then, we will interpolate these data to generate a continuous path through gaitspace • To test the usefulness of this interpolated path, we will attempt to transition among commanded leg speeds along this path and assess stability 1. Joel D. Weingarten, Gabriel A. D. Lopes, Martin Buehler, Richard E. Groff, Daniel E. Koditschek, "Automated Gait Adaptation for Legged Robots", IEEE International Conference on Robotics Automation (ICRA), April 2004

  6. Refutability • Can we even determine a reasonable path of optimal efficiency? • Are efficient gaits necessarily stable enough to see real-world use? • With the mathematics entirely divorced from the robot’s qualitative behavior, we may generate gaits that are mathematically optimal but are unusable • Binary conception of stability: does the robot’s body hit the ground? • Another possibility: a single discontinuity in gaitspace requiring a gait transition not produced by the aforementioned interpolation • Animals exhibit a discontinuous transition between “walking” and “running” gaits; this could be a result of parallel local gait minima for energy expenditure [1] • Not intuitive whether this will occur in robots or not Here, parallel local minima produce a discontinuous minimum path 1. RobilliardJJ, Pfau T, Wilson AM., "Gait characterisation and classification in horses", Journal of Experimental Biology, January 2007

  7. Necessary Means • A robot which is able to run many different gaits defined by different parameter sets (which in turn define different Buehler clocks) (we are using X-RHex) • A cost function which can normalize the cost of a gait over different speeds (we are using specific resistance; this is determined experimentally using X-RHex’s onboard power measurements and GPS measurements) • A tuning algorithm which coordinates changing the robot's gait parameters with values of the cost function in order to find gait parameters which minimize costs (we modified existing lab code to optimize δ, φ0, and φs) • A means of storing the gaits generated by the tuning algorithm (text files uploaded to Dropbox, available to both of us) • A means of mathematically interpolating the gaits stored in order to produce a continuum of efficient gaits (future work) • A suitably long stretch of (roughly) homogeneous terrain on which to test the gaits and their transitions (the walkway along Hill field)

  8. Experimental Setup • Our setup used the X-RHex robot • Equipped with a GPS and IMU • The GPS was used to track changes in position • The IMU was used to integrate the total path of the robot if it was turned • In order to determine the total distance traveled • Dividing this by time gave us the robot’s velocity, v • We also used the robot’s onboard circuitry to measure power, P • These two quantities, together with the robot’s mass, m, and the acceleration of gravity, g, are used to calculate specific resistance: SR = P/(m*g*v)1 • To actually perform the optimization based on specific resistance, we used the Nelder-Mead algorithm2 • This changed the gait parameters and ran new gaits generated by the algorithm until it converged or reached stagnation G. Gabrielli and T.H. von karman, “What price speed?,” Mech. Eng.., vol. 72, no. 10, 1950. J.A. Nelder and R. Mead, “A simplex method for function minimization,” Computer Journal, vol. 7, pp. 308-313, 1965.

  9. Operational Plan & Outcome • On the experimental side, the primary task was to write a script that would perform Nelder-Mead optimization on our parameters of interes • Our original plan was to use an existing Nelder-Mead implementation, and write the software to interface Nelder-Mead with the robot ourselves • However, after talking over this plan with DenizIlhan we decided due to time constraints to base our code on the KodLab’s existing framework • The existing code was intended to optimize all of the robot’s parameters, meaning that it required modifications on our part to constrain the parameter space to include only those parameters of interest to us • However, using this framework provided enough headstart that we were able to avoid turning our work into a coding project and instead focus, as originally planned, on studying optimization and the resulting data • Using our modified version of the existing code, we have been able to run Nelder-Mead optimizations of specific resistance on the robot to “completion” four separate times (elaboration to come) • After theorizing about the possible pitfalls of Nelder-Mead, primarily the question about noise versus ruggedness in the optimization function, we realized we needed to perform experiments to inform our theoretical analysis and vice-versa. A simple noise analysis is the next step following the current phase of experimentation

  10. Exploring Nelder-Mead • The first thing we did was run Nelder-Mead on several simple functions • We tried paraboloids of various widths and depths in 4-D and Nelder-Mead found the global minimum • Next we added noise to these functions and found that convergence was only guaranteed if the tolerance was greater than the amplitude of the noise we added • While we didn’t realize this beforehand, intuitively it makes sense • To get a sense of Nelder-Mead’s behavior on “difficult” functions, we examined its behavior on several known functions • We originally intended to generate “difficult” functions on our own • But it turns out that this is time consuming, and hard to visualize for 4-D; furthermore it has already been done • Instead, we used 4-D extensions of the Rosenbrock and Himmelblau functions • Nelder-Mead was able to converge to the minima of each function despite their difficulty • However, when we added random noise to the functions, the algorithm was able to come near the minima • We found that Nelder-Mead will reach stagnation when its tolerance is set to a value that is less than the magnitude of the noise on the cost function measurements f(x,y) = (1-x)2 + 100(y-x2)2 f(x,y)=(x2 + y – 11)2 + (x+y2 – 7)2

  11. Results of Optimization • We ran a total of 4 Nelder-Mead descents from start to “finish” • Three of these used SR as their cost function (as we intended) and we ran one with SR/v2as was done by Weingarten et al. in 2004 • Three used the same starting simplex, and one used a different one • All four runs reached stagnation; based on our theoretical work, we believe that this is due to the tolerance (0.01) being smaller than the magnitude of the noise on our measurements. • However, our runs did produce decreasing specific resistance values, and tolerance can always be increased during analysis and certainly in future optimization runs

  12. Preliminary Numerical Results • Calculated gait distances using the standard L2-norm, and found that there was no clear clustering of optimized gaits starting from the same simplex or using the same cost function • Perhaps the gait space is smooth? • Many more trials necessary, in addition to noise analysis • The data that we have had time to gather do show improvements in the gaits as the trials went on • While we did not reach convergence with the given tolerance, a high tolerance would have resulted in convergence for these same data

  13. Conclusion • The next step of this project will be to perform several more optimizations using the same initial simplex, to examine the magnitude of noise we encounter in the parameter space. We will then determine the noise in specific resistance at a few gaits along the Nelder-Mead algorithm’s path of descent in hopes of determining the relative effect of specific resistance noise versus ruggedness of parameter space on optimization • Next, we will perform optimizations using several starting simplices at the same leg speed in order to further evaluate the ruggedness of the parameter space and attempt to find local minima in which the Nelder-Mead algorithm may become stuck • Ideally, these steps would be repeated for several leg speeds, leading to a better understanding of the noise and ruggedness of the complete parameter space • Once we have optimized gaits for several leg speeds, we will attempt to user our understanding of the noise and ruggedness in the space to construct an interpolated path along a 4-D “valley” in the parameter space and evaluate its efficacy in facilitating smooth gait transitions

  14. Himmelblau and Rosenbrock • The Rosenbrock function is used to test the efficacy of statistical minimization methods because it has a large valley in the middle • Finding this valley is nearly trivial as it lies between two regions of the parameter space with large negative slopes • Though convergence is difficult to achieve because the valley becomes nearly flat • This function can be generalized to N-dimensions • The actual function we used was: • f(x,y,z)=(1-x)2+100*(y – x2)+(1-y)2+100*(z-y2)2 • The global minimum is at (1,1,1) and this was reached by Nelder-Mead to within the noise margin • The Himmelblau function is also used for similar purposes • Because it has four local minima • This can make it hard to optimization algorithms to converge as they may oscillate back and forth between minima and thus not converge • We could not find a source for the minimum values of this function in four dimensions, so we opted to use three • The actual function we used was f(x,y) = (x2+y-11)2 + (x+y2-7)2 • The global minimum output values are all 0 and Nelder-Mead converged to one of these, to within the noise margin • Which minima was reached depended upon the starting simplex

More Related