.. raw:: html
Installation
============
Dependencies
------------
RoBO needs the following dependencies to be installed for it’s core functionality.
* scipy >= 0.12
* numpy >= 1.7
* direct
* cma
* george
* emcee
Additionally RoBO has some optional dependencies that are only needed for specific modules:
* cython
* `pyrfr `_
* theano
* matplotlib
* lasagne
* `sgmcmc `_
* `hpolib2 `_
**Note**: RoBO works only with Python3. Python2 is not supported anymore.
Manual Installation
-------------------
RoBO uses the Gaussian processes library `george `_ and the random forests library `pyrfr `_. In order to use this library make sure the libeigen and swig are installed:
.. code:: bash
sudo apt-get install libeigen3-dev swig gfortran
Download RoBO and then change into the new directory:
.. code:: bash
git clone https://github.com/automl/RoBO
cd RoBO/
Before you install RoBO you have to install the required dependencies. We use a for loop because we want to preserve the installation order of the list of dependencies in the requirments file.
.. code:: bash
for req in $(cat requirements.txt); do pip install $req; done
This will install the basis requirements that you need to run RoBO's core functionality. If you want to make
use of the full functionality (for instance Bohamiann, Fabolas, ...) you can install all necessary dependencies
by:
.. code:: bash
for req in $(cat all_requirements.txt); do pip install $req; done
**Note**: This may take a while to install all dependencies.
Finally you can install RoBO by:
.. code:: bash
python setup.py install
Testing
-------
You can run all the tests using `nose `_ . Just run the following commands in the RoBO directory:
.. code:: bash
cd test/
nosetests