Amos Gait Optimization

Supplementary Data

Supplementary material for the thesis “Gait optimization of the six-legged walking AMOS robot using Gaussian mixture model and PI2 algorithm” by Peter Mailänder. Project Contact: Tomas Kulvicius

Video Footages

All videos show a simulation of two instances of AMOS II. The robot in the foreground is operated with a GMM controller, the robot in the background has a SO(2) controller applied.

Video 1

The video shows a simulation of a walking AMOS II with a GMM-controller. The controller is not yet optimized.

Video 2
The second video shows AMOS II after an optimization with PI2 algorithm. It is to see that AMOS II has a far-reaching leg movement and a low center of gravity.
Video 3
One of the fastest indiviudals that emereged over the course of the optimization is shown in this video. It can be seen how AMOS II jumps within his walk, the gait reminds of a galopp.
Video 4
The video shows an individual of the balanced optimization. Here, AMOS II has a fast, jumping walking gait, as well as the tendency to rest the body on the floor between the steps.
Video 5
The last video shows AMOS II with an energy-usage minized controller. Clearly visible are the far-reaching, long legs. To save energy, especially the FT joints hardly show any movement.

Source Code

There are two independent folders with source code provided. The file gmm_controller includes an GMM-controller, the file pi2_optimization an optimization algorithm for the controller. The projects lpzrobots and gorobots have to be downloaded and set up correctly. For this purpose, various libraries must be installed. A useful step by step guide can be found on setup, the projects can be compiled.

2.1 GMM controller

The file gmm_controller has to be placed within the gorobots project, e.g., gorobots > examples > gmm_controller. After this the compilation can be started in gmm_controller with

$ make

and after building finished the robot can be started with

$ ./start

In the appearing window a simulated robot can now be seen, walking with the GMM-controller. By using the q and y keys one can change through the best individuals of each iteration. The current iteration step is shown in the title bar at the bottom of the window. There are different kernel files for the controller within the subfolder optimalKernels.

2.2 PI2 optimization

The file pi2_optimization has to be placed within the gorobots project. After compiling with

$ make

it can be started with

$ ./start

This will execute a rollout for which a controller with randomized GMM will be optimized. The optimization is done without graphical output. After 500 iterations it finishes and shows the run of the best individual of the last iteration. For a rollout a log file will be created in the directory pi2_optimization > log_data.

Computational Neuroscience Group