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 http://manoonpong.com/MOROCO/lpz_guide.txt 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
.