Commits

Ruben Martinez-Cantin  committed 0309ed7

Edited online

  • Participants
  • Parent commits 1e67759

Comments (0)

Files changed (1)

 #[[References]]
 
 
+   Copyright (C) 2011 Ruben Martinez-Cantin <rmcantin@unizar.es>
+ 
+   BayesOptimization is free software: you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation, either version 3 of the License, or
+   (at your option) any later version.
 
+   BayesOptimization is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
 
-=== 1 - INSTALL: ===
-
-
-Bayesopt uses standard C/C++ code, standard libraries (see dependencies) and
-it can be compiled in different platforms using CMake.
-
-==== Linux or Mac OS: ====
-{{{
-$ cmake . 
-$ make
-$ sudo make install
-}}}
-
-Using ccmake instead of cmake you will access a interface to select features 
-such as debug mode, which version of DIRECT to use (see below) and if you want
-to use shared libraries or not. Shared libraries are required to use the 
-Python interface.
-
-If you have doxygen installed on your computer, you can compile the
-documentation directly using cmake. 
-
-{{{
-$ cmake .
-$ make
-$ make doc
-$ make install
-}}}
-
-The documentation will appear on the doc subdirectory.
-
-
-==== Windows ====
-It can be compilled using CMake and MinGW compilers.
-
-
-=== 2 - USAGE: ===
-
-Jointly with bayesian-optimization, the test program krigtest will be compiled.
-It can be used as an example of the interfaces that bayesian-optimization provide.
-There are three kind of interfaces.
-
-==== 2.1 - C functional usage ==== 
-
-This interface is fully functional from C and C++. It resembles the classic 
-NLOPT interface, therefore, NLOPT manual can used as well. We just need to 
-define a function pointer to the function that we need to evaluate. The 
-function pointer must agree with the template provided in krigwpr.h
-
-Note that the gradient has been included for future compatibility, although
-in the current implementation, it is not used. You can just use a NULL pointer.
-
-
-==== 2.2 - C++ polymorphic usage ==== 
-
-The second way to use the function is by creating an object that inherits 
-from the Krigging object defined in krigging.hpp
-
-Then, we just need to define the virtual function evaluateSample, which 
-has interfaces both for C arrays and uBlas vectors. You can just redefine
-your favorite interface.
-
-Note that the checkReachability function has been included for future 
-compatibility, although in the current implementation, it is not used.
-
-==== 2.3 - Python functional usage ====
-
-The file bin/test.py provides an example of the Python interface. It is similar
-the C interface. The parameters must be defined as a Python dictionary.
-
-
-=== 3 -  DEPENDENCIES: ===
-
-==== 3.1 - BOOST: ====
-
-This code uses Boost libraries for matrix operations (uBlas) and random
-number generation. They can be found in standard linux distributions or
-it can be downloaded from (www.boost.org). Since they are pure template
-libraries, they do not require compilation. Just make sure the headers are
-on the include path.
-
-They are not very efficient, so it may change in future versions.
-
-
-==== 3.2 - DIRECT: ====
-
-This library requires some other nonlinear optimization library 
-(e.g.: DIRECT). 
-
-
-===== a) Using Fortran DIRECT: =====
-
-For completeness, it includes a Fortran 77 implementation of the
-DIRECT-L algorithm by J. Gablonsky
-
-J. M. Gablonsky and C. T. Kelley, "A locally-biased form of the DIRECT 
-algorithm," J. Global Optimization, vol. 21 (1), p. 27-37 (2001). 
-
-The original code can be downloaded from 
-[[http://www4.ncsu.edu/~ctk/SOFTWARE/DIRECTv204.tar.gz|here]],
-which includes some parallel processing functions that are not yet 
-supported in bayesian-optimization.
-
-I have only tested this code using gfortran on Windows, Mac OS X
-and Linux, but it should work with other fortran compilers like f77 or
-f95.
-
-===== b) Using NLOPT (default): =====
-
-We recommend the use of NLOPT for the inner loop optimization. The latest
-version can be downloaded from 
-
-http://ab-initio.mit.edu/wiki/index.php/NLopt
-
-NLOPT does not require external libraries and it is compatible with 
-Windows and Mac. Although compiling it in Windows is tricky.
-
-==== 3.3 - PYTHON: ====
-
-The library has been tested with Python 2.6 and 2.7 Python development files such as 
-Python.h are needed to compile the interface. It you want to modify the Python
-interface, you also need Cython.
-
-{{{
-$ cython --cplus bayesopt.pyx
-}}}
-
-
-=== 4. KNOWN ISSUES ===
-
-- In some systems, the linker is not able to find the shared libraries. You
-just need to point the LD_LIBRARY_PATH and PYTHONPATH to the corresponding
-folder (by default: /usr/local/lib)
-
-- I have found that in some versions of Linux, NLOPT callback procedure
-fails when using the Python interface of bayesian-optimization.
+   You should have received a copy of the GNU General Public License
+   along with BayesOptimization.  If not, see <[[http://www.gnu.org/licenses/|http://www.gnu.org/licenses/]]>.