Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Harris Hawks Optimization integration #280

Merged
merged 11 commits into from
Nov 16, 2020

Conversation

sisco0
Copy link
Contributor

@sisco0 sisco0 commented Nov 8, 2020

Summary

The Harris Hawks Optimization Algorithm has been integrated into NiaPy.

This algorithm goes on the line of Nature inspired optimization algorithms.

Having completeness and state-of-the-art as a goal for the NiaPy project, this
algorithm has been added, as it has been recently published (2019) in a JCR journal.

Unitary tests for the algorithm has been added as well.

Other Information

As this is my first algorithm integration development, please take care at its review.
I would be happy to fix the issues found at it as well.

I used BatAlgorithm as a template for writing this script.

Even more, I added some useful comments for other source files as well.

Please feel yourself free for modifying these.

I want to thank Iztok, Jr. for guiding me through this development.

@todo
Copy link

todo bot commented Nov 8, 2020

Fix bech by bench

# TODO Fix bech by bench
task1, task2 = TestingTask(D=D, nFES=self.nFES if nFES is None else nFES, nGEN=self.nGEN if nGEN is None else nGEN, benchmark=bech), TestingTask(D=D, nFES=self.nFES if nFES is None else nFES, nGEN=self.nGEN if nGEN is None else nGEN, benchmark=bech)
return task1, task2


This comment was generated by todo based on a TODO comment in defecd5 in #280. cc @sisco0.

@todo
Copy link

todo bot commented Nov 8, 2020

Add one-liner np.clip approach

# TODO: Add one-liner np.clip approach
ir = where(x < Lower)
x[ir] = Lower[ir]
ir = where(x > Upper)


This comment was generated by todo based on a TODO comment in defecd5 in #280. cc @sisco0.

@sisco0
Copy link
Contributor Author

sisco0 commented Nov 8, 2020

Please, review tests performed, as reproduction errors are thrown because of random number generator.
This happens not only at this algorithm, but for others as well.

firefly-cpp and others added 4 commits November 8, 2020 20:46
### Summary

The Harris Hawks Optimization Algorithm has been integrated into _NiaPy_.

This algorithm goes on the line of _Nature inspired optimization algorithms_.

Having completeness and state-of-the-art as a goal for the _NiaPy_ project, this 
algorithm has been added, as it has been recently published (2019) in a JCR journal.

Unitary tests for the algorithm has been added as well.

### Other Information

As this is my first algorithm integration development, please take care at its review.
I would be happy to fix the issues found at it as well.

I used _BatAlgorithm_ as a template for writing this script.

Even more, I added some useful comments for other source files as well.

Please feel yourself free for modifying these.

I want to thank **Iztok, Jr**. for guiding me through this development.
@sisco0
Copy link
Contributor Author

sisco0 commented Nov 15, 2020

Accepted at my fork the changes proposed by @firefly-cpp .

There were some reproduction errors due to the fact that
the random number generation was not correctly stated.
It has been solved by using self.Rand as expected.
@sisco0
Copy link
Contributor Author

sisco0 commented Nov 15, 2020

Reproduction tests errors were fixed successfully.

Modified for flake8 code styles fixes
@sisco0
Copy link
Contributor Author

sisco0 commented Nov 15, 2020

I added some fixes for flake8 styling over hho.py file so it goes well with it.

@GregaVrbancic GregaVrbancic merged commit a0dd78b into NiaOrg:master Nov 16, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants