This repository contains the Harris Hawks Optimization code (matlab M-file) for optimizing the benchmark function:
.
├── img
| ├── convergence-2d.png
| ├── convergence-50d.png
| ├── logo.jpg
| ├── schwefel_222.gif
| └── trajectory.png
├── _config.yml
├── hho.m —— [function of harris hawks optimization]
├── LICENSE
├── README.md
└── test.m —— [a test for 'hho.m']
[fbst, xbst, performance] = hho ( objective, d, lmt, n, T, S )
where
objective
is the function handle of the objective functiond
is the dimension of the design variablelmt
is the limit of the design variable; is a matrix withd
rows and 2 column, and the first column contains lower limits of all dimension while the second upper ones.n
is the population size of the particle swarmT
is the maximum iteration times.fbst
is the fitness of the optimal solutionxbst
is the optimal solutionperformance
is contains the best fitness value, the average fitness value and the standard deviation.
For instance, a benchmark Schwefel 2.22 is chosen for a test:
Here, this benchmark is coded as a function handle
schwefel_222 = @(x) sum(abs(x))+prod(abs(x));
where x
is a d
-by-n
matrix.
To run the test by executing
test.m
The test including two runs:
-
30-
d
benchmarkThe results includes an optimal solution, its fitness and an execution time. Also, a plot of the convergence curve of fitness is shown.
-
2-
d
benchmarkThe results includes an optimal solution, its fitness and an execution time. Also, a plot of the convergence curve of fitness, a plot of the trajectory of global optimal are shown.
[1] Article: Harris hawks optimization: Algorithm and applications
[2] Repo: BenchmarkFcns