No description, website, or topics provided.
C++ Python Makefile Other
Branch: master New pull request Clone or download
sam rm
Latest commit bf1ab97 Jan 12, 2020
Type Name Latest commit message Commit time
Failed to load latest commit information.
_voxcad removed object files Oct 11, 2019
data_analysis remove evosoro refs Oct 11, 2019
exp remove evosoro refs Oct 11, 2019
tools acknowledgements Jan 11, 2020
.gitignore resetting ground penetration checker Oct 11, 2019 Update Oct 3, 2019 code dump Oct 3, 2019 code dump Oct 3, 2019 code dump Oct 3, 2019 code dump Oct 3, 2019


The first step is to install Anaconda as your python 2.7 distribution on a linux machine.

But revert Anaconda's networkx <2.0.

pip install networkx==1.11

Install Qt and QMake, specifically these packages: "libqt4-dev", "qt4-qmake", "libqwt-dev", "freeglut3-dev" and "zlib1g-dev".

sudo apt-get install libqt4-dev qt4-qmake libqwt-dev freeglut3-dev zlib1g-dev

Install git.

sudo apt-get install git

Navigate to the working directory (e.g., your home).

cd ~

Clone the repo.

git clone

Navigate to the _voxcad directory.

cd reconfigurable_organisms/_voxcad/

Compile both VoxCad (GUI) and Voxelyze (physics engine).


If you happen to modify VoxCad or Voxelyze in the future, call the same script to clean and recompile everything.


Install the voxelyze library.

cd Voxelyze
make installusr
cd ../voxelyzeMain/

Navigate to the exp folder and run one of the .py experiments (detailed in the paper), which require two input args (seed and runtime), both of which can be set to 1 for now.

cd ../exp
PYTHONPATH=$HOME/reconfigurable_organisms/ $HOME/anaconda/bin/python 1 1

This creates a directory (~/reconfigurable_organisms/run_1) to hold the results.

Output should appear in the console.

After the experiment runs for a few generations, the current shape/controller adaptation can be seen by opening one of the generated .vxa files within the VoxCAD GUI. A .vxa file is just an XML file representing a robot that can be simulated by VoxCad/Voxelyze.

Navigate to reconfigurable_organisms/_voxcad/release.

cd ../_voxcad/release

Open VoxCad.


Then select the desired .vxa file from:

"File -> Import -> Simulation"

The .vxa files for the best performing individuals will be saved in:


Once the robot is loaded, you can start the physics simulation by clicking the Sandbox.png icon in the top bar ("Physics Sandbox").

A known issue with non-US machines

If the system's numeric locale differs from en_US.UTF-8, the atof function might read double and floating point values in the .vxa as integers.

This will cause the robot not to move, disappear, or just behave strangely when running a .vxa file in VoxCad.

To fix this issue, open the locale settings.

sudo gedit /etc/default/locale

Set LC_NUMERIC to en_US.UTF-8.


Save, close the file, and reboot.


Voxelyze documentation is available here.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.