- First release on PyPI.
- Includes primary optimization techniques such as global-best PSO and local-best PSO - #1, #3
- Patch on LocalBestPSO implementation. It seems that it's not returning the best value of the neighbors, this fixes the problem .
- New feature: Test functions for single-objective problems - #6, #10, #14. Contributed by @Carl-K. Thank you!
- New feature: Binary Particle Swarm Optimization - #7, #17
- Patch on Ackley function return error - #22
- Improved documentation and unit tests - #16
- Added a patch to fix
pip
installation
- New feature: easy graphics environment. This new plotting environment makes it easier to plot the costs and swarm movement in 2-d or 3-d planes - #30, #31
- New feature: Native GridSearch and RandomSearch implementations for finding the best hyperparameters in controlling swarm behaviour - #4, #20, #25. Contributed by @SioKCronin. Thanks a lot!
- Added tests for hyperparameter search techniques - #27, #28, #40. Contributed by @jazcap53. Thank you so much!
- Updated structure of Base classes for higher extensibility
- Fixed patch on
local_best.py
andbinary.py
- #33, #34. Thanks for the awesome fix, @CPapadim! - Git now ignores IPython notebook checkpoints
- PySwarms is now published on the Journal of Open Source Software (JOSS)! You can check the review here. In addition, you can also find our paper in this link. Thanks a lot to @kyleniemeyer and @stsievert for the thoughtful reviews and comments.
- You can now set the initial position wherever you want - #93
- Quick-fix for the Rosenbrock function - #98
- Tolerance can now be set to break during iteration - #100
Thanks for all the wonderful Pull Requests, @mamadyonline!
- New PySwarms backend. You can now build native swarm implementations using this module! - #115, #116, #117
- Drop Python 2.7 version support. This package now supports Python 3.4 and up - #113
- All tests were ported into pytest - #114
- Fix sigmoid function in BinaryPSO - #145. Thanks a lot @ThomasCES!
- New topologies: Pyramid, Random, and Von Neumann. More ways for your particles to interact! - #176, #177, #155, #142. Thanks a lot @whzup!
- New GeneralOptimizer algorithm that allows you to switch-out topologies for your optimization needs - #151. Thanks a lot @whzup!
- All topologies now have a static attribute. Neigbors can now be set initially or computed dynamically - #164. Thanks a lot @whzup!
- New single-objective functions - #168. Awesome work, @jayspeidell!
- New tutorial on Inverse Kinematics using Particle Swarm Optimization - #141. Thanks a lot @whzup!
- New plotters module for visualization. The environment module is now deprecated - #135
- Keyword arguments can now be passed in the
optimize()
method for your custom objective functions - #144. Great job, @bradahoward
- New collaboration tool using Vagrantfiles - #193. Thanks a lot @jdbohrman!
- Add configuration file for pyup.io - #210
- Fix incomplete documentation in ReadTheDocs - #208
- Update dependencies via pyup - #204