Bayesian Multi-Scale Optimistic Optimization
This is a simple MATLAB implementation of BaMSOO, described in the paper Bayesian Multi-Scale Optimistic Optimization by Wang et al.. The paper can be found (here)[http://jmlr.org/proceedings/papers/v33/wang14d.pdf]
The repository has four files:
- BaMSOO.m : implements the technique.
- calculateInvCovarianceMatrix.m : calculate the kernel matrix
- estimateGP.m : estimates the mean and variance
- calculateBounds.m : calculates the function bounds for a function
- runDemo.m : a simple graphical demo on a 1-D function visualizing the tree
To run a simple demo, fire MATLAB and run the following command:
runDemo
To solve an optimization problem, we need to specify the function, target function value, the dimensions, the min and max range of the search space, and the evaluation budget. An example is provided here:
% Specify the problem
func = @(x) sum((x-0.6).^2);
dimension = 2;
maxRange = 1;
minRange = -1;
numEvaluations = 1000;
ftarget = 1e-5;
% Solve the problem
[yBest, xBest, nodes ]= BaMSOO(func, ftarget, dimension, maxRange, minRange, numEvaluations);
fprintf('optimal f-value is %f\n',yBest)
#Citation If you write a scientific paper describing research that made use of this code, please cite the following paper:
@InProceedings{ash-bamsoo-15,
Title = {Analysis of the Bayesian Multi-Scale Optimistic Optimization on the {CEC2016} and {BBOB} Testbeds},
Author = {Abdullah Al-Dujaili and S. Suresh},
Booktitle = {{IEEE} Congress on Evolutionary Computation ({CEC})},
Year = {2016},
Month = {July},
Owner = {aldujail001},
Timestamp = {2015.07.01}
}