Evolution of CPG parameters for a simple modular robot
Switch branches/tags
Nothing to show
Clone or download
Latest commit 9a5c17b Feb 26, 2015
Type Name Latest commit message Commit time
Failed to load latest commit information.
Modular First commit with basic files Feb 25, 2015
coppelia First commit with basic files Feb 25, 2015



Evolution of CPG parameters for a simple modular robot

This has been tested in Ubuntu 14.04 LTS

The main classes are located in the evolutionJEAFParallelRemote and start with "Evolution..."

The main classes call the xml configuration files which configure all the evolution parameters. Evolution is done using JEAF which can be downloaded in https://github.com/GII/JEAF/wiki/Java-Evolutionary-Algorithm-Framework that also uses mpj-express (http://mpj-express.org/) as a way to do multiple evaluations in parallel.

The "CalculateFitness..." classes in the evolutionJEAFParallelRemote folder should be adjusted to the specific file system being used to open the scenes in the simulator.

Simulation is done using the V-REP simulator (http://www.coppeliarobotics.com/) it must be installed on its latest version and enabled to work in the continous remoteAPI mode. All scenes used are located in the Modular folder. For the parallel evaluation several copies of the simulator should be used, each copy should be in its own folder with the name "Vrepn" wiht n being a number starting from 0 until the number of desired simulators that are going to be run in parallel, inside each folder the files vrep.sh and vrep (the executable) should be renamed to vrepn.sh and vrepn (the executable) and the contents of vrepn.sh should be changed to be able to open the simulator remotely, the file remoteApiConnections.txt should also be modified with the specific port number in descending order, for example for Vrep0 the port number would be 19997, for Vrep1 it would be 19996.. and so on. For examples of the vrepn.sh and remoteApiConnections.txt files on each case see the V-REP folder.

The main class should be run using mpj-express (http://mpj-express.org/) in the cluster configuration, with at least one daemon running on the same computer.