PySwarms Logo

Welcome to PySwarms’s documentation!

PyPI Version Build Status Documentation Status License Citation

PySwarms is an extensible research toolkit for particle swarm optimization (PSO) in Python.

It is intended for swarm intelligence researchers, practitioners, and students who prefer a high-level declarative interface for implementing PSO in their problems. PySwarms enables basic optimization with PSO and interaction with swarm optimizations. Check out more features below!

Launching pad

  • If you don’t know what Particle Swarm Optimization is, read up this short Introduction! Then, if you plan to use PySwarms in your project, check the Installation guide and use-case examples.
  • If you are a researcher in the field of swarm intelligence, and would like to include your technique in our list of optimizers, check our contributing page to see how to implement your optimizer using the current base classes in the library.
  • If you are an open-source contributor, and would like to help PySwarms grow, be sure to check our Issues page in Github, and see the open issues with the tag help-wanted. Moreover, we accommodate contributions from first-time contributors! Just check our first-timers-only tag for open issues (Don’t worry! We’re happy to help you make your first PR!).

Introduction

It’s all a treasure hunt

Imagine that you and your friends are looking for a treasure together. The treasure is magical, and it rewards not only the one who finds it, but also those near to it. Your group knows, approximately, where the treasure is, but not exactly sure of its definite location.

Your group then decided to split up with walkie-talkies and metal detectors. You use your walkie-talkie to inform everyone of your current position, and the metal detector to check your proximity to the treasure. In return, you gain knowledge of your friends’ positions, and also their distance from the treasure.

As a member of the group, you have two options:

  • Ignore your friends, and just search for the treasure the way you want it. Problem is, if you didn’t find it, and you’re far away from it, you get a very low reward.
  • Using the information you gather from your group, coordinate and find the treasure together. The best way is to know who is the one nearest to the treasure, and move towards that person.

Here, it is evident that by using the information you can gather from your friends, you can increase the chances of finding the treasure, and at the same time maximize the group’s reward. This is the basics of Particle Swarm Optimization (PSO). The group is called the swarm, you are a particle, and the treasure is the global optimum [CI2007].

Particle Swarm Optimization (PSO)

As with the treasure example, the idea of PSO is to emulate the social behaviour of birds and fishes by initializing a set of candidate solutions to search for an optima. Particles are scattered around the search-space, and they move around it to find the position of the optima. Each particle represents a candidate solution, and their movements are affected in a two-fold manner: (1) their cognitive desire to search individually, (2) and the collective action of the group or its neighbors. It is a fairly simple concept with profound applications.

One interesting characteristic of PSO is that it does not use the gradient of the function, thus, objective functions need not to be differentiable. Moreover, the basic PSO is astonishingly simple. Adding variants to the original implementation can help it adapt to more complicated problems.

The original PSO algorithm is attributed to Eberhart, Kennedy, and Shi [IJCNN1995] [ICEC2008]. Nowadays, a lot of variations in topology, search-space characteristic, constraints, objectives, are being researched upon to solve a variety of problems.

Why make PySwarms?

In one of my graduate courses during Masters, my professor asked us to implement PSO for training a neural network. It was, in all honesty, my first experience of implementing an algorithm from concept to code. I found the concept of PSO very endearing, primarily because it gives us an insight on the advantage of collaboration given a social situation.

When I revisited my course project, I realized that PSO, given enough variations, can be used to solve a lot of problems: from simple optimization, to robotics, and to job-shop scheduling. I then decided to build a research toolkit that can be extended by the community (us!) and be used by anyone.

References

[CI2007]
  1. Engelbrecht, “An Introduction to Computational Intelligence,” John Wiley & Sons, 2007.
[IJCNN1995]
  1. Kennedy and R.C. Eberhart, “Particle Swarm Optimization,” Proceedings of the IEEE International Joint Conference on Neural Networks, 1995, pp. 1942-1948.
[ICEC2008]
  1. Shi and R.C. Eberhart, “A modified particle swarm optimizer,” Proceedings of the IEEE International Conference on Evolutionary Computation, 1998, pp. 69-73.

Features

Single-Objective Optimizers

These are standard optimization techniques for finding the optima of a single objective function.

Continuous

Single-objective optimization where the search-space is continuous. Perfect for optimizing various common functions.

  • pyswarms.single.global_best - classic global-best Particle Swarm Optimization algorithm with a star-topology. Every particle compares itself with the best-performing particle in the swarm.
  • pyswarms.single.local_best - classic local-best Particle Swarm Optimization algorithm with a ring-topology. Every particle compares itself only with its nearest-neighbours as computed by a distance metric.
  • pyswarms.single.general_optimizer - alterable but still classic Particle Swarm Optimization algorithm with a custom topology. Every topology in the pyswarms.backend module can be passed as an argument.
Discrete

Single-objective optimization where the search-space is discrete. Useful for job-scheduling, traveling salesman, or any other sequence-based problems.

  • pyswarms.discrete.binary - classic binary Particle Swarm Optimization algorithm without mutation. Uses a ring topology to choose its neighbours (but can be set to global).

Utilities

Benchmark Functions

These functions can be used as benchmarks for assessing the performance of the optimization algorithm.

Plotters

A quick and easy to use tool for the visualization of optimizations. It allows you to easily create animations and to visually check your optimization!

Environment

Deprecated since version 0.4.0: Use pyswarms.utils.plotters instead!

Various environments that allow you to analyze your swarm performance and make visualizations!

  • pyswarms.utils.environments.plot_environment - an environment for plotting the cost history and animating particles in a 2D or 3D space.

Installation

Stable release

To install PySwarms, run this command in your terminal:

$ pip install pyswarms

This is the preferred method to install PySwarms, as it will always install the most recent stable release.

If you don’t have pip installed, this Python installation guide can guide you through the process.

From sources

The sources for PySwarms can be downloaded from the Github repo.

You can either clone the public repository:

$ git clone git://github.com/ljvmiranda921/pyswarms

Or download the tarball:

$ curl  -OL https://github.com/ljvmiranda921/pyswarms/tarball/master

Once you have a copy of the source, you can install it with:

$ python setup.py install

Credits

This project was inspired by the pyswarm module that performs PSO with constrained support. The package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

Maintainers

Contributors

History

0.1.0 (2017-07-12)

  • First release on PyPI.
  • NEW: Includes primary optimization techniques such as global-best PSO and local-best PSO - #1, #3
0.1.1 (2017-07-25)
  • FIX: Patch on LocalBestPSO implementation. It seems that it’s not returning the best value of the neighbors, this fixes the problem .
  • NEW: Test functions for single-objective problems - #6, #10, #14. Contributed by @Carl-K. Thank you!
0.1.2 (2017-08-02)
  • NEW: Binary Particle Swarm Optimization - #7, #17
  • FIX: Fix on Ackley function return error - #22
  • IMPROVED: Documentation and unit tests - #16
0.1.4 (2017-08-03)
  • FIX: Added a patch to fix pip installation
0.1.5 (2017-08-11)
  • NEW: 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
0.1.6 (2017-09-24)
  • NEW: Native GridSearch and RandomSearch implementations for finding the best hyperparameters in controlling swarm behaviour - #4, #20, #25. Contributed by @SioKCronin. Thanks a lot!
  • NEW: Added tests for hyperparameter search techniques - #27, #28, #40. Contributed by @jazcap53. Thank you so much!
  • IMPROVED: Updated structure of Base classes for higher extensibility
0.1.7 (2017-09-25)
  • FIX: Fixed patch on local_best.py and binary.py - #33, #34. Thanks for the awesome fix, @CPapadim!
  • NEW: Git now ignores IPython notebook checkpoints
0.1.8 (2018-01-11)
  • NEW: 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.
0.1.9 (2018-04-20)
  • NEW: You can now set the initial position wherever you want - #93
  • FIX: Quick-fix for the Rosenbrock function - #98
  • NEW: Tolerance can now be set to break during iteration - #100

Thanks for all the wonderful Pull Requests, @mamadyonline!

0.2.0 (2018-06-11)

  • NEW: New PySwarms backend. You can now build native swarm implementations using this module! - #115, #116, #117
  • DEPRECATED: Drop Python 2.7 version support. This package now supports Python 3.4 and up - #113
  • IMPROVED: All tests were ported into pytest - #114
0.2.1 (2018-06-27)
  • FIX: Fix sigmoid function in BinaryPSO - #145. Thanks a lot @ThomasCES!

0.3.0 (2018-08-10)

  • NEW: New topologies: Pyramid, Random, and Von Neumann. More ways for your particles to interact! - #176, #177, #155, #142. Thanks a lot @whzup!
  • NEW: New GeneralOptimizer algorithm that allows you to switch-out topologies for your optimization needs - #151. Thanks a lot @whzup!
  • NEW: All topologies now have a static attribute. Neigbors can now be set initially or computed dynamically - #164. Thanks a lot @whzup!
  • NEW: New single-objective functions - #168. Awesome work, @jayspeidell!
  • NEW: New tutorial on Inverse Kinematics using Particle Swarm Optimization - #141. Thanks a lot @whzup!
  • NEW: New plotters module for visualization. The environment module is now deprecated - #135
  • IMPROVED: Keyword arguments can now be passed in the optimize() method for your custom objective functions - #144. Great job, @bradahoward
0.3.1 (2018-08-13)
  • NEW: New collaboration tool using Vagrantfiles - #193. Thanks a lot @jdbohrman!
  • NEW: Add configuration file for pyup.io - #210
  • FIX: Fix incomplete documentation in ReadTheDocs - #208
  • IMPROVED: Update dependencies via pyup - #204

0.4.0 (2019-01-29)

  • NEW: The console output is now generated by the Reporter module - #227
  • NEW: A @cost decorator which automatically scales to the whole swarm - #226
  • FIX: A bug in the topologies where the best position in some topologies was not calculated using the nearest neighbours - #253
  • FIX: Swarm init positions - #249 Thanks @dfhljf!
  • IMPROVED: Better naming for the benchmark functions - #222 Thanks @nik1082!
  • IMPROVED: Error handling in the Optimizers - #232
  • IMPROVED: New management method for dependencies - #263
  • DEPRECATED: The environments module is now deprecated - #217

1.0.0 (2019-02-08)

This is the first major release of PySwarms. Starting today, we will be adhering to a better semantic versioning guidelines. We will be updating the project wikis shortly after. The maintainers believe that PySwarms is mature enough to merit a version 1, this would also help us release more often (mostly minor releases) and create patch releases as soon as possible.

Also, we will be maintaining a quarterly release cycle, where the next minor release (v.1.0.0) will be on June. All enhancements and new features will be staged on the development branch, then will be merged back to the master branch at the end of the cycle. However, bug fixes and documentation errors will merit a patch release, and will be merged to master immediately.

  • NEW: Boundary and velocity handlers to resolve stuck particles - #238 . All thanks for our maintainer, @whzup !
  • FIX: Duplication function calls during optimization, hopefully your long-running objective functions won’t take doubly long. - #266. Thank you @danielcorreia96 !
1.0.1 (2019-02-14)
  • FIX: Handlers memory management so that it works all the time - #286 . Thanks for this @whzup !
  • FIX: Re-introduce fix for multiple optimization function calls - #290 . Thank you once more @danielcorreia96 !
1.0.2 (2019-02-17)
  • FIX: BinaryPSO should return final best position instead of final swarm - #293 . Thank you once more @danielcorreia96 !

1.1.0 (2019-05-18)

This new version adds support for parallel particle evaluation, better documentation, multiple fixes, and updated build dependencies.

  • NEW: Updated API documentation - #344
  • NEW: Relaxed dependencies when installing pyswarms - #345
  • NEW: We’re now using Azure Pipelines for our builds! - #327
  • NEW: Add notebook for electric circuits - #288 . Thank you @miguelcocruz !
  • NEW: Parallel particle evaluation - #312 . Thahnk you once more @danielcorreia96 !
  • FIX: Fix optimise methods returning incorrect best_pos - #322 . Thank you @ichbinjakes !
  • FIX: Fix SearchBase parameter - #328 . Thank you @Kutim !
  • FIX: Fix basic optimization example - #329 . Thank you @IanBoyanZhang !
  • FIX: Fix global best velocity equation - #330 . Thank you @craymichael !
  • FIX: Update sample code to new API - #296 . Thank you @ndngo !

Tutorials

These tutorials will set you up in using PySwarms for your own optimization problems:

Basic Optimization

In this example, we’ll be performing a simple optimization of single-objective functions using the global-best optimizer in pyswarms.single.GBestPSO and the local-best optimizer in pyswarms.single.LBestPSO. This aims to demonstrate the basic capabilities of the library when applied to benchmark problems.

[1]:
# Import modules
import numpy as np

# Import PySwarms
import pyswarms as ps
from pyswarms.utils.functions import single_obj as fx

# Some more magic so that the notebook will reload external python modules;
# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython
%load_ext autoreload
%autoreload 2
Optimizing a function

First, let’s start by optimizing the sphere function. Recall that the minima of this function can be located at f(0,0..,0) with a value of 0. In case you don’t remember the characteristics of a given function, simply call help(<function>).

For now let’s just set some arbitrary parameters in our optimizers. There are, at minimum, three steps to perform optimization:

  1. Set the hyperparameters to configure the swarm as a dict.
  2. Create an instance of the optimizer by passing the dictionary along with the necessary arguments.
  3. Call the optimize() method and have it store the optimal cost and position in a variable.

The optimize() method returns a tuple of values, one of which includes the optimal cost and position after optimization. You can store it in a single variable and just index the values, or unpack it using several variables at once.

[2]:
%%time
# Set-up hyperparameters
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9}

# Call instance of PSO
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2, options=options)

# Perform optimization
cost, pos = optimizer.optimize(fx.sphere, iters=1000)
2019-05-18 15:39:13,096 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=1.09e-41
2019-05-18 15:39:25,448 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 1.093473857947962e-41, best pos: [3.27682830e-21 4.43998725e-22]
CPU times: user 3.02 s, sys: 774 ms, total: 3.79 s
Wall time: 12.4 s

We can see that the optimizer was able to find a good minima as shown above. You can control the verbosity of the output using the verbose argument, and the number of steps to be printed out using the print_step argument.

Now, let’s try this one using local-best PSO:

[3]:
%%time
# Set-up hyperparameters
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9, 'k': 2, 'p': 2}

# Call instance of PSO
optimizer = ps.single.LocalBestPSO(n_particles=10, dimensions=2, options=options)

# Perform optimization
cost, pos = optimizer.optimize(fx.sphere, iters=1000)
2019-05-18 15:39:25,476 - pyswarms.single.local_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9, 'k': 2, 'p': 2}
pyswarms.single.local_best: 100%|██████████|1000/1000, best_cost=3.28e-41
2019-05-18 15:39:37,110 - pyswarms.single.local_best - INFO - Optimization finished | best cost: 3.275639739592901e-41, best pos: [-5.62944989e-21 -1.40094066e-21]
CPU times: user 1.93 s, sys: 271 ms, total: 2.2 s
Wall time: 11.6 s
Optimizing a function with bounds

Another thing that we can do is to set some bounds into our solution, so as to contain our candidate solutions within a specific range. We can do this simply by passing a bounds parameter, of type tuple, when creating an instance of our swarm. Let’s try this using the global-best PSO with the Rastrigin function (rastrigin in pyswarms.utils.functions.single_obj).

Recall that the Rastrigin function is bounded within [-5.12, 5.12]. If we pass an unbounded swarm into this function, then a ValueError might be raised. So what we’ll do is to create a bound within the specified range. There are some things to remember when specifying a bound:

  • A bound should be of type tuple with length 2.
  • It should contain two numpy.ndarrays so that we have a (min_bound, max_bound)
  • Obviously, all values in the max_bound should always be greater than the min_bound. Their shapes should match the dimensions of the swarm.

What we’ll do now is to create a 10-particle, 2-dimensional swarm. This means that we have to set our maximum and minimum boundaries with the shape of 2. In case we want to initialize an n-dimensional swarm, we then have to set our bounds with the same shape n. A fast workaround for this would be to use the numpy.ones function multiplied by a constant.

[4]:
# Create bounds
max_bound = 5.12 * np.ones(2)
min_bound = - max_bound
bounds = (min_bound, max_bound)
[5]:
%%time
# Initialize swarm
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9}

# Call instance of PSO with bounds argument
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2, options=options, bounds=bounds)

# Perform optimization
cost, pos = optimizer.optimize(fx.rastrigin, iters=1000)
2019-05-18 15:39:37,279 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=0
2019-05-18 15:39:48,976 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 0.0, best pos: [-1.11729550e-09  3.10827139e-09]
CPU times: user 1.95 s, sys: 254 ms, total: 2.21 s
Wall time: 11.7 s
Basic Optimization with Arguments

Here, we will run a basic optimization using an objective function that needs parameterization. We will use the single.GBestPSO and a version of the rosenbrock function to demonstrate

[6]:
# import modules
import numpy as np

# create a parameterized version of the classic Rosenbrock unconstrained optimzation function
def rosenbrock_with_args(x, a, b, c=0):
    f = (a - x[:, 0]) ** 2 + b * (x[:, 1] - x[:, 0] ** 2) ** 2 + c
    return f
Using Arguments

Arguments can either be passed in using a tuple or a dictionary, using the kwargs={} paradigm. First lets optimize the Rosenbrock function using keyword arguments. Note in the definition of the Rosenbrock function above, there were two arguments that need to be passed other than the design variables, and one optional keyword argument, a, b, and c, respectively

[7]:
from pyswarms.single.global_best import GlobalBestPSO

# instatiate the optimizer
x_max = 10 * np.ones(2)
x_min = -1 * x_max
bounds = (x_min, x_max)
options = {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
optimizer = GlobalBestPSO(n_particles=10, dimensions=2, options=options, bounds=bounds)

# now run the optimization, pass a=1 and b=100 as a tuple assigned to args

cost, pos = optimizer.optimize(rosenbrock_with_args, 1000, a=1, b=100, c=0)
2019-05-18 15:39:49,204 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=7.02e-10
2019-05-18 15:40:01,463 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 7.019703679797182e-10, best pos: [1.0000264  1.00005302]

It is also possible to pass a dictionary of key word arguments by using ** decorator when passing the dict

[8]:
kwargs={"a": 1.0, "b": 100.0, 'c':0}
cost, pos = optimizer.optimize(rosenbrock_with_args, 1000, **kwargs)
2019-05-18 15:40:01,475 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=0
2019-05-18 15:40:13,805 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 0.0, best pos: [1. 1.]

Any key word arguments in the objective function can be left out as they will be passed the default as defined in the prototype. Note here, c is not passed into the function.

[9]:
cost, pos = optimizer.optimize(rosenbrock_with_args, 1000, a=1, b=100)
2019-05-18 15:40:13,819 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=0
2019-05-18 15:40:25,963 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 0.0, best pos: [1. 1.]

Writing your own optimization loop

In this example, we will use the pyswarms.backend module to write our own optimization loop. We will try to recreate the Global best PSO using the native backend in PySwarms. Hopefully, this short tutorial can give you an idea on how to use this for your own custom swarm implementation. The idea is simple, again, let’s refer to this diagram:

Optimization loop

Some things to note: - Initialize a Swarm class and update its attributes for every iteration. - Initialize a Topology class (in this case, we’ll use a Star topology), and use its methods to operate on the Swarm. - We can also use some additional methods in pyswarms.backend depending on our needs.

Thus, for each iteration: 1. We take an attribute from the Swarm class. 2. Operate on it according to our custom algorithm with the help of the Topology class; and 3. Update the Swarm class with the new attributes.

[1]:
# Import modules
import numpy as np

# Import sphere function as objective function
from pyswarms.utils.functions.single_obj import sphere as f

# Import backend modules
import pyswarms.backend as P
from pyswarms.backend.topology import Star

# Some more magic so that the notebook will reload external python modules;
# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython
%load_ext autoreload
%autoreload 2
Native global-best PSO implementation

Now, the global best PSO pseudocode looks like the following (adapted from A. Engelbrecht, “Computational Intelligence: An Introduction, 2002):

# Python-version of gbest algorithm from Engelbrecht's book
for i in range(iterations):
    for particle in swarm:
        # Part 1: If current position is less than the personal best,
        if f(current_position[particle]) < f(personal_best[particle]):
            # Update personal best
            personal_best[particle] = current_position[particle]
        # Part 2: If personal best is less than global best,
        if f(personal_best[particle]) < f(global_best):
            # Update global best
            global_best = personal_best[particle]
        # Part 3: Update velocity and position matrices
        update_velocity()
        update_position()

As you can see, the standard PSO has a three-part scheme: update the personal best, update the global best, and update the velocity and position matrices. We’ll follow this three part scheme in our native implementation using the PySwarms backend

Let’s make a 2-dimensional swarm with 50 particles that will optimize the sphere function. First, let’s initialize the important attributes in our algorithm

[2]:
my_topology = Star() # The Topology Class
my_options = {'c1': 0.6, 'c2': 0.3, 'w': 0.4} # arbitrarily set
my_swarm = P.create_swarm(n_particles=50, dimensions=2, options=my_options) # The Swarm Class

print('The following are the attributes of our swarm: {}'.format(my_swarm.__dict__.keys()))
The following are the attributes of our swarm: dict_keys(['position', 'velocity', 'n_particles', 'dimensions', 'options', 'pbest_pos', 'best_pos', 'pbest_cost', 'best_cost', 'current_cost'])

Now, let’s write our optimization loop!

[3]:
iterations = 100 # Set 100 iterations
for i in range(iterations):
    # Part 1: Update personal best
    my_swarm.current_cost = f(my_swarm.position) # Compute current cost
    my_swarm.pbest_cost = f(my_swarm.pbest_pos)  # Compute personal best pos
    my_swarm.pbest_pos, my_swarm.pbest_cost = P.compute_pbest(my_swarm) # Update and store

    # Part 2: Update global best
    # Note that gbest computation is dependent on your topology
    if np.min(my_swarm.pbest_cost) < my_swarm.best_cost:
        my_swarm.best_pos, my_swarm.best_cost = my_topology.compute_gbest(my_swarm)

    # Let's print our output
    if i%20==0:
        print('Iteration: {} | my_swarm.best_cost: {:.4f}'.format(i+1, my_swarm.best_cost))

    # Part 3: Update position and velocity matrices
    # Note that position and velocity updates are dependent on your topology
    my_swarm.velocity = my_topology.compute_velocity(my_swarm)
    my_swarm.position = my_topology.compute_position(my_swarm)

print('The best cost found by our swarm is: {:.4f}'.format(my_swarm.best_cost))
print('The best position found by our swarm is: {}'.format(my_swarm.best_pos))
Iteration: 1 | my_swarm.best_cost: 0.0009
Iteration: 21 | my_swarm.best_cost: 0.0000
Iteration: 41 | my_swarm.best_cost: 0.0000
Iteration: 61 | my_swarm.best_cost: 0.0000
Iteration: 81 | my_swarm.best_cost: 0.0000
The best cost found by our swarm is: 0.0000
The best position found by our swarm is: [3.30572365e-19 2.93696483e-19]

Of course, we can just use the GlobalBestPSO implementation in PySwarms (it has boundary support, tolerance, initial positions, etc.):

[4]:
from pyswarms.single import GlobalBestPSO

optimizer = GlobalBestPSO(n_particles=50, dimensions=2, options=my_options) # Reuse our previous options
optimizer.optimize(f, iters=100)
2019-05-18 15:39:20,737 - pyswarms.single.global_best - INFO - Optimize for 100 iters with {'c1': 0.6, 'c2': 0.3, 'w': 0.4}
pyswarms.single.global_best: 100%|██████████|100/100, best_cost=0.00418
2019-05-18 15:39:21,942 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 0.004177699645933291, best pos: [0.03663518 0.05325001]
[4]:
(0.004177699645933291, array([0.03663518, 0.05325001]))

Visualization

PySwarms implements tools for visualizing the behavior of your swarm. These are built on top of matplotlib, thus rendering charts that are easy to use and highly-customizable.

In this example, we will demonstrate three plotting methods available on PySwarms: - plot_cost_history: for plotting the cost history of a swarm given a matrix - plot_contour: for plotting swarm trajectories of a 2D-swarm in two-dimensional space - plot_surface: for plotting swarm trajectories of a 2D-swarm in three-dimensional space

[1]:
# Import modules
import matplotlib.pyplot as plt
import numpy as np
from IPython.display import Image

# Import PySwarms
import pyswarms as ps
from pyswarms.utils.functions import single_obj as fx
from pyswarms.utils.plotters import (plot_cost_history, plot_contour, plot_surface)

The first step is to create an optimizer. Here, we’re going to use Global-best PSO to find the minima of a sphere function. As usual, we simply create an instance of its class pyswarms.single.GlobalBestPSO by passing the required parameters that we will use. Then, we’ll call the optimize() method for 100 iterations.

[2]:
options = {'c1':0.5, 'c2':0.3, 'w':0.9}
optimizer = ps.single.GlobalBestPSO(n_particles=50, dimensions=2, options=options)
cost, pos = optimizer.optimize(fx.sphere, iters=100)
2019-05-18 16:04:30,391 - pyswarms.single.global_best - INFO - Optimize for 100 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|100/100, best_cost=3.82e-8
2019-05-18 16:04:31,656 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 3.821571688965892e-08, best pos: [ 1.68014465e-04 -9.99342611e-05]
Plotting the cost history

To plot the cost history, we simply obtain the cost_history from the optimizer class and pass it to the cost_history function. Furthermore, this method also accepts a keyword argument **kwargs similar to matplotlib. This enables us to further customize various artists and elements in the plot. In addition, we can obtain the following histories from the same class: - mean_neighbor_history: average local best history of all neighbors throughout optimization - mean_pbest_history: average personal best of the particles throughout optimization

[3]:
plot_cost_history(cost_history=optimizer.cost_history)
plt.show()
_images/examples_tutorials_visualization_6_0.png
Animating swarms

The plotters module offers two methods to perform animation, plot_contour() and plot_surface(). As its name suggests, these methods plot the particles in a 2-D or 3-D space.

Each animation method returns a matplotlib.animation.Animation class that still needs to be animated by a Writer class (thus necessitating the installation of a writer module). For the proceeding examples, we will convert the animations into a JS script. In such case, we need to invoke some extra methods to do just that.

Lastly, it would be nice to add meshes in our swarm to plot the sphere function. This enables us to visually recognize where the particles are with respect to our objective function. We can accomplish that using the Mesher class.

[4]:
from pyswarms.utils.plotters.formatters import Mesher
[5]:
# Initialize mesher with sphere function
m = Mesher(func=fx.sphere)

There are different formatters available in the pyswarms.utils.plotters.formatters module to customize your plots and visualizations. Aside from Mesher, there is a Designer class for customizing font sizes, figure sizes, etc. and an Animator class to set delays and repeats during animation.

Plotting in 2-D space

We can obtain the swarm’s position history using the pos_history attribute from the optimizer instance. To plot a 2D-contour, simply pass this together with the Mesher to the plot_contour() function. In addition, we can also mark the global minima of the sphere function, (0,0), to visualize the swarm’s “target”.

[6]:
%%capture
# Make animation
animation = plot_contour(pos_history=optimizer.pos_history,
                         mesher=m,
                         mark=(0,0))
[7]:
# Enables us to view it in a Jupyter notebook
animation.save('plot0.gif', writer='imagemagick', fps=10)
Image(url='plot0.gif')
2019-05-18 16:04:34,422 - matplotlib.animation - INFO - Animation.save using <class 'matplotlib.animation.ImageMagickWriter'>
2019-05-18 16:04:34,425 - matplotlib.animation - INFO - MovieWriter.run: running command: ['convert', '-size', '720x576', '-depth', '8', '-delay', '10.0', '-loop', '0', 'rgba:-', 'plot0.gif']
[7]:
Plotting in 3-D space

To plot in 3D space, we need a position-fitness matrix with shape (iterations, n_particles, 3). The first two columns indicate the x-y position of the particles, while the third column is the fitness of that given position. You need to set this up on your own, but we have provided a helper function to compute this automatically

[8]:
# Obtain a position-fitness matrix using the Mesher.compute_history_3d()
# method. It requires a cost history obtainable from the optimizer class
pos_history_3d = m.compute_history_3d(optimizer.pos_history)
[9]:
# Make a designer and set the x,y,z limits to (-1,1), (-1,1) and (-0.1,1) respectively
from pyswarms.utils.plotters.formatters import Designer
d = Designer(limits=[(-1,1), (-1,1), (-0.1,1)], label=['x-axis', 'y-axis', 'z-axis'])
[10]:
%%capture
# Make animation
animation3d = plot_surface(pos_history=pos_history_3d, # Use the cost_history we computed
                           mesher=m, designer=d,       # Customizations
                           mark=(0,0,0))               # Mark minima
[11]:
animation3d.save('plot1.gif', writer='imagemagick', fps=10)
Image(url='plot1.gif')
2019-05-18 16:04:57,791 - matplotlib.animation - INFO - Animation.save using <class 'matplotlib.animation.ImageMagickWriter'>
2019-05-18 16:04:57,792 - matplotlib.animation - INFO - MovieWriter.run: running command: ['convert', '-size', '720x576', '-depth', '8', '-delay', '10.0', '-loop', '0', 'rgba:-', 'plot1.gif']
[11]:

Options Handler Tutorial

Varying options with time is a well regarded technique in particle swarm optimization for faster convergence and better solutions. This class exposes methods to do the same.

In this example, we will demonstrate some common variation techniques along with some visualisation. - oh_strategy: a dictionary containing the strategies for each option - end_opts: a dictionary containing the ending options for each option - plot_cost_history: for plotting the cost history of a swarm given a matrix - plot_contour: for plotting swarm trajectories of a 2D-swarm in two-dimensional space

[1]:
# Import modules
import matplotlib.pyplot as plt
import numpy as np
from IPython.display import Image

# Import PySwarms
import pyswarms as ps
from pyswarms.utils.functions import single_obj as fx
from pyswarms.utils.plotters import (plot_cost_history, plot_contour)

from pyswarms.backend.handlers import OptionsHandler

Let’s create some optimizers for comparison. Here, we’re going to use Global-best PSO to find the minima of a sphere function. As usual, we simply create an instance of its class pyswarms.single.GlobalBestPSO by passing the required parameters that we will use. Then, we’ll call the optimize() method for 100 iterations for both and visualise the results

[2]:
options = {'c1':0.5, 'c2':0.3, 'w':0.9}  # starting options
optimizer_without_handle=ps.single.GlobalBestPSO(n_particles=50, dimensions=2, options=options)
optimizer_with_handle = ps.single.GlobalBestPSO(n_particles=50, dimensions=2, options=options, oh_strategy={"w":'exp_decay', 'c1':'lin_variation'})

cost, pos = optimizer_without_handle.optimize(fx.sphere, iters=100)
cost_h, pos_h = optimizer_with_handle.optimize(fx.sphere, iters=100)

2020-12-11 19:23:18,434 - pyswarms.single.global_best - INFO - Optimize for 100 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|100/100, best_cost=7.95e-10
2020-12-11 19:23:18,540 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 7.946552028624106e-10, best pos: [ 2.74938126e-05 -6.22458616e-06]
2020-12-11 19:23:18,541 - pyswarms.single.global_best - INFO - Optimize for 100 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.9}
pyswarms.single.global_best: 100%|██████████|100/100, best_cost=7.99e-28
2020-12-11 19:23:18,648 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 7.987498732542365e-28, best pos: [ 7.14102116e-15 -2.73451219e-14]
[ ]:

Comparing the cost history

To plot the cost history, we simply obtain the cost_history from the optimizer class and pass it to the cost_history function. In addition, we can obtain the following histories from the same class: - mean_neighbor_history: average local best history of all neighbors throughout optimization - mean_pbest_history: average personal best of the particles throughout optimization

[3]:
fig, (ax, ax_h) = plt.subplots(ncols=2, nrows=1)
fig.set_size_inches(15,7)
plot_cost_history(ax=ax, cost_history=optimizer_without_handle.cost_history)
plot_cost_history(ax=ax_h, cost_history=optimizer_with_handle.cost_history)
ax.set_title("Cost history without inertia decay")
ax_h.set_title("Cost history with exponential intertia decay")
plt.show()
_images/examples_tutorials_options_handler_6_0.svg

The rapid decay of the inertia weight contributes significantly to the overall best cost and position. It also converges a lot faster.

The next part shows the explanation for this with an animation

Comparing animations

The plotters module offers two methods to perform animation, plot_contour(). This method plot the particles in a 2-D space.

The objective function contours are added using the Mesher class.

[4]:
from pyswarms.utils.plotters.formatters import Mesher
# Initialize mesher with sphere function
m = Mesher(func=fx.sphere)
Plotting in 2-D space

We can obtain the swarm’s position history using the pos_history attribute from the optimizer instance. To plot a 2D-contour, simply pass this together with the Mesher to the plot_contour() function. In addition, we can also mark the global minima of the sphere function, (0,0), to visualize the swarm’s “target”.

[5]:
%%capture

# Make and save animation
animation = plot_contour(pos_history=optimizer_without_handle.pos_history,
                         mesher=m,
                         mark=(0,0))
animation_h = plot_contour(pos_history=optimizer_with_handle.pos_history,
                         mesher=m,
                         mark=(0,0))
# Enables us to view it in a Jupyter notebook
animation.save('ani.gif', writer='imagemagick', fps=10)

animation_h.save('ani_h.gif', writer='imagemagick', fps=10)


2020-12-11 19:23:22,596 - matplotlib.animation - WARNING - MovieWriter imagemagick unavailable; using Pillow instead.
2020-12-11 19:23:22,597 - matplotlib.animation - INFO - Animation.save using <class 'matplotlib.animation.PillowWriter'>
2020-12-11 19:23:30,971 - matplotlib.animation - WARNING - MovieWriter imagemagick unavailable; using Pillow instead.
2020-12-11 19:23:30,973 - matplotlib.animation - INFO - Animation.save using <class 'matplotlib.animation.PillowWriter'>

Compare the two animations. Observe the convergence time and particle overshoot in both figures.

Left: Without handle

Right: With handle

[ ]:

Customizing ending options

As of the current version(1.2.0), you’ll need to create your own optimization loop to keep custom ending options. The next block shows a basic implementation of this without logging etc.

[6]:
from pyswarms.backend.operators import compute_pbest, compute_objective_function
[10]:
def optimize(objective_func, maxiters, oh_strategy,start_opts, end_opts):
    opt = ps.single.GlobalBestPSO(n_particles=50, dimensions=2, options=start_opts, oh_strategy=oh_strategy)

    swarm = opt.swarm
    opt.bh.memory = swarm.position
    opt.vh.memory = swarm.position
    swarm.pbest_cost = np.full(opt.swarm_size[0], np.
    inf)

    for i in range(maxiters):
        # Compute cost for current position and personal best
        swarm.current_cost =  compute_objective_function(swarm, objective_func)
        swarm.pbest_pos, swarm.pbest_cost = compute_pbest(swarm)

        # Set best_cost_yet_found for ftol
        best_cost_yet_found = swarm.best_cost
        swarm.best_pos, swarm.best_cost = opt.top.compute_gbest(swarm)
        # Perform options update
        swarm.options = opt.oh( opt.options, iternow=i, itermax=maxiters, end_opts=end_opts )
        print("Iteration:", i," Options: ", swarm.options)    # print to see variation
        # Perform velocity and position updates
        swarm.velocity = opt.top.compute_velocity(
            swarm, opt.velocity_clamp, opt.vh, opt.bounds
        )
        swarm.position = opt.top.compute_position(
            swarm, opt.bounds, opt.bh
        )
    # Obtain the final best_cost and the final best_position
    final_best_cost = swarm.best_cost.copy()
    final_best_pos = swarm.pbest_pos[
        swarm.pbest_cost.argmin()
    ].copy()
    return final_best_cost, final_best_pos

In the next cell, you can play around with the start and end options, maximum iterations and the function itself to compare the outputs like above.

[12]:
function = fx.rosenbrock    # optimum at [1,1]
maxiters = 100
start_opts = {'c1':2.5, 'c2':0.5, 'w':0.9}
end_opts= {'c1':0.5, 'c2':2.5, 'w':0.4}     # Ref:[1]
oh_strategy={ "w":'exp_decay', "c1":'nonlin_mod',"c2":'lin_variation'}

cost, pos=optimize(function, maxiters, oh_strategy, start_opts, end_opts)

print("Best cost = ", cost)
print("Best position = ", pos)
Iteration: 0  Options:  {'c1': 2.5, 'c2': 0.5, 'w': 0.8154845485377135}
Iteration: 1  Options:  {'c1': 2.476024064289623, 'c2': 0.52, 'w': 0.7638427274927154}
Iteration: 2  Options:  {'c1': 2.4520965166602724, 'c2': 0.54, 'w': 0.7212425273766464}
Iteration: 3  Options:  {'c1': 2.428217751727513, 'c2': 0.56, 'w': 0.6855550181382926}
Iteration: 4  Options:  {'c1': 2.4043881714225273, 'c2': 0.5800000000000001, 'w': 0.6552602432446853}
Iteration: 5  Options:  {'c1': 2.3806081852052783, 'c2': 0.6000000000000001, 'w': 0.6292465903435571}
Iteration: 6  Options:  {'c1': 2.3568782102861965, 'c2': 0.6200000000000001, 'w': 0.6066838570323415}
Iteration: 7  Options:  {'c1': 2.3331986718568167, 'c2': 0.6399999999999999, 'w': 0.5869404779457066}
Iteration: 8  Options:  {'c1': 2.3095700033298305, 'c2': 0.6599999999999999, 'w': 0.5695280957195421}
Iteration: 9  Options:  {'c1': 2.285992646589043, 'c2': 0.6799999999999999, 'w': 0.5540635587607113}
Iteration: 10  Options:  {'c1': 2.2624670522497583, 'c2': 0.7, 'w': 0.5402423141269194}
Iteration: 11  Options:  {'c1': 2.2389936799301475, 'c2': 0.72, 'w': 0.527819424452714}
Iteration: 12  Options:  {'c1': 2.215572998534194, 'c2': 0.74, 'w': 0.5165957922398924}
Iteration: 13  Options:  {'c1': 2.192205486546836, 'c2': 0.76, 'w': 0.5064080078932764}
Iteration: 14  Options:  {'c1': 2.1688916323420004, 'c2': 0.78, 'w': 0.4971207626134709}
Iteration: 15  Options:  {'c1': 2.1456319345042183, 'c2': 0.8, 'w': 0.4886211049862233}
Iteration: 16  Options:  {'c1': 2.1224269021646167, 'c2': 0.8200000000000001, 'w': 0.48081404179727616}
Iteration: 17  Options:  {'c1': 2.0992770553520845, 'c2': 0.8400000000000001, 'w': 0.4736191317674961}
Iteration: 18  Options:  {'c1': 2.076182925360504, 'c2': 0.8600000000000001, 'w': 0.46696782158333405}
Iteration: 19  Options:  {'c1': 2.053145055132976, 'c2': 0.8799999999999999, 'w': 0.4608013430638035}
Iteration: 20  Options:  {'c1': 2.030163999664059, 'c2': 0.8999999999999999, 'w': 0.455069038916464}
Iteration: 21  Options:  {'c1': 2.007240326421086, 'c2': 0.9199999999999999, 'w': 0.44972701900111317}
Iteration: 22  Options:  {'c1': 1.984374615785726, 'c2': 0.94, 'w': 0.4447370737567352}
Iteration: 23  Options:  {'c1': 1.961567461517037, 'c2': 0.96, 'w': 0.4400657894042114}
Iteration: 24  Options:  {'c1': 1.938819471237338, 'c2': 0.98, 'w': 0.4356838227118487}
Iteration: 25  Options:  {'c1': 1.916131266942353, 'c2': 1.0, 'w': 0.43156530287330336}
Iteration: 26  Options:  {'c1': 1.893503485537166, 'c2': 1.02, 'w': 0.4276873353495389}
Iteration: 27  Options:  {'c1': 1.87093677939967, 'c2': 1.04, 'w': 0.4240295880363697}
Iteration: 28  Options:  {'c1': 1.8484318169733072, 'c2': 1.06, 'w': 0.4205739443113132}
Iteration: 29  Options:  {'c1': 1.8259892833910558, 'c2': 1.08, 'w': 0.4173042107280646}
Iteration: 30  Options:  {'c1': 1.8036098811327728, 'c2': 1.1, 'w': 0.41420586961014694}
Iteration: 31  Options:  {'c1': 1.7812943307181757, 'c2': 1.12, 'w': 0.41126586872702486}
Iteration: 32  Options:  {'c1': 1.759043371437939, 'c2': 1.14, 'w': 0.4084724417486748}
Iteration: 33  Options:  {'c1': 1.7368577621255956, 'c2': 1.16, 'w': 0.40581495436664605}
Iteration: 34  Options:  {'c1': 1.7147382819731596, 'c2': 1.18, 'w': 0.4032837719146377}
Iteration: 35  Options:  {'c1': 1.6926857313936474, 'c2': 1.2, 'w': 0.4008701450750272}
Iteration: 36  Options:  {'c1': 1.6707009329339555, 'c2': 1.22, 'w': 0.39856611086172655}
Iteration: 37  Options:  {'c1': 1.6487847322418678, 'c2': 1.24, 'w': 0.39636440655637023}
Iteration: 38  Options:  {'c1': 1.626937999091311, 'c2': 1.26, 'w': 0.3942583946688905}
Iteration: 39  Options:  {'c1': 1.6051616284703591, 'c2': 1.28, 'w': 0.3922419973141236}
Iteration: 40  Options:  {'c1': 1.583456541736921, 'c2': 1.3, 'w': 0.3903096386581006}
Iteration: 41  Options:  {'c1': 1.5618236878475174, 'c2': 1.32, 'w': 0.3884561943027294}
Iteration: 42  Options:  {'c1': 1.5402640446650828, 'c2': 1.34, 'w': 0.3866769466548326}
Iteration: 43  Options:  {'c1': 1.518778620352329, 'c2': 1.36, 'w': 0.3849675454721789}
Iteration: 44  Options:  {'c1': 1.497368454857856, 'c2': 1.38, 'w': 0.3833239729009879}
Iteration: 45  Options:  {'c1': 1.4760346215029587, 'c2': 1.4, 'w': 0.38174251242096996}
Iteration: 46  Options:  {'c1': 1.454778228677894, 'c2': 1.42, 'w': 0.3802197211989471}
Iteration: 47  Options:  {'c1': 1.4336004216573355, 'c2': 1.44, 'w': 0.3787524054234573}
Iteration: 48  Options:  {'c1': 1.4125023845457787, 'c2': 1.46, 'w': 0.37733759825283403}
Iteration: 49  Options:  {'c1': 1.39148534236489, 'c2': 1.48, 'w': 0.3759725400600326}
Iteration: 50  Options:  {'c1': 1.3705505632961241, 'c2': 1.5, 'w': 0.3746546607005046}
Iteration: 51  Options:  {'c1': 1.349699361093501, 'c2': 1.52, 'w': 0.3733815635660021}
Iteration: 52  Options:  {'c1': 1.3289330976831786, 'c2': 1.54, 'w': 0.3721510112183664}
Iteration: 53  Options:  {'c1': 1.3082531859684736, 'c2': 1.56, 'w': 0.3709609124240106}
Iteration: 54  Options:  {'c1': 1.2876610928612768, 'c2': 1.58, 'w': 0.3698093104326385}
Iteration: 55  Options:  {'c1': 1.2671583425634432, 'c2': 1.6, 'w': 0.36869437236336694}
Iteration: 56  Options:  {'c1': 1.2467465201247816, 'c2': 1.62, 'w': 0.3676143795783189}
Iteration: 57  Options:  {'c1': 1.226427275307758, 'c2': 1.6400000000000001, 'w': 0.36656771893834633}
Iteration: 58  Options:  {'c1': 1.2062023267930964, 'c2': 1.6600000000000001, 'w': 0.36555287484817117}
Iteration: 59  Options:  {'c1': 1.1860734667651598, 'c2': 1.6800000000000002, 'w': 0.3645684220091819}
Iteration: 60  Options:  {'c1': 1.1660425659214986, 'c2': 1.7, 'w': 0.3636130188076487}
Iteration: 61  Options:  {'c1': 1.146111578957366, 'c2': 1.72, 'w': 0.36268540127440874}
Iteration: 62  Options:  {'c1': 1.126282550583548, 'c2': 1.74, 'w': 0.36178437755931375}
Iteration: 63  Options:  {'c1': 1.1065576221447462, 'c2': 1.76, 'w': 0.3609088228700637}
Iteration: 64  Options:  {'c1': 1.0869390389162645, 'c2': 1.78, 'w': 0.360057674830598}
Iteration: 65  Options:  {'c1': 1.0674291581692645, 'c2': 1.8, 'w': 0.35922992921908464}
Iteration: 66  Options:  {'c1': 1.0480304581097744, 'c2': 1.8199999999999998, 'w': 0.35842463604983676}
Iteration: 67  Options:  {'c1': 1.0287455478145502, 'c2': 1.8399999999999999, 'w': 0.3576408959672543}
Iteration: 68  Options:  {'c1': 1.0095771783084766, 'c2': 1.8599999999999999, 'w': 0.3568778569232281}
Iteration: 69  Options:  {'c1': 0.9905282549543739, 'c2': 1.88, 'w': 0.3561347111123839}
Iteration: 70  Options:  {'c1': 0.9716018513579736, 'c2': 1.9, 'w': 0.35541069214215554}
Iteration: 71  Options:  {'c1': 0.9528012250299461, 'c2': 1.92, 'w': 0.35470507241699134}
Iteration: 72  Options:  {'c1': 0.9341298350951458, 'c2': 1.94, 'w': 0.35401716071805106}
Iteration: 73  Options:  {'c1': 0.9155913623992082, 'c2': 1.96, 'w': 0.3533462999615839}
Iteration: 74  Options:  {'c1': 0.8971897324376921, 'c2': 1.98, 'w': 0.35269186512080497}
Iteration: 75  Options:  {'c1': 0.8789291416275995, 'c2': 2.0, 'w': 0.35205326129754305}
Iteration: 76  Options:  {'c1': 0.8608140875614461, 'c2': 2.02, 'w': 0.35142992193123407}
Iteration: 77  Options:  {'c1': 0.8428494040384126, 'c2': 2.04, 'w': 0.350821307133995}
Iteration: 78  Options:  {'c1': 0.8250403018670246, 'c2': 2.06, 'w': 0.3502269021415575}
Iteration: 79  Options:  {'c1': 0.8073924166953819, 'c2': 2.08, 'w': 0.3496462158707742}
Iteration: 80  Options:  {'c1': 0.7899118654710782, 'c2': 2.1, 'w': 0.3490787795752519}
Iteration: 81  Options:  {'c1': 0.7726053135965205, 'c2': 2.12, 'w': 0.3485241455914203}
Iteration: 82  Options:  {'c1': 0.7554800554745198, 'c2': 2.14, 'w': 0.3479818861680258}
Iteration: 83  Options:  {'c1': 0.7385441120054486, 'c2': 2.16, 'w': 0.34745159237265394}
Iteration: 84  Options:  {'c1': 0.7218063498096469, 'c2': 2.18, 'w': 0.3469328730694381}
Iteration: 85  Options:  {'c1': 0.7052766286755895, 'c2': 2.2, 'w': 0.3464253539626105}
Iteration: 86  Options:  {'c1': 0.6889659862428663, 'c2': 2.2199999999999998, 'w': 0.34592867670100746}
Iteration: 87  Options:  {'c1': 0.6728868726545348, 'c2': 2.24, 'w': 0.34544249803904953}
Iteration: 88  Options:  {'c1': 0.657053453585897, 'c2': 2.26, 'w': 0.34496648905008775}
Iteration: 89  Options:  {'c1': 0.6414820089421402, 'c2': 2.28, 'w': 0.3445003343883481}
Iteration: 90  Options:  {'c1': 0.6261914688960386, 'c2': 2.3, 'w': 0.3440437315960089}
Iteration: 91  Options:  {'c1': 0.6112041531021342, 'c2': 2.32, 'w': 0.34359639045222895}
Iteration: 92  Options:  {'c1': 0.5965468213847226, 'c2': 2.34, 'w': 0.34315803236119463}
Iteration: 93  Options:  {'c1': 0.5822522228837674, 'c2': 2.36, 'w': 0.34272838977648734}
Iteration: 94  Options:  {'c1': 0.5683614862434021, 'c2': 2.38, 'w': 0.3423072056592845}
Iteration: 95  Options:  {'c1': 0.5549280271653059, 'c2': 2.4, 'w': 0.3418942329680971}
Iteration: 96  Options:  {'c1': 0.5420244448704603, 'c2': 2.42, 'w': 0.3414892341779263}
Iteration: 97  Options:  {'c1': 0.529756065178477, 'c2': 2.44, 'w': 0.34109198082688047}
Iteration: 98  Options:  {'c1': 0.518292202077093, 'c2': 2.46, 'w': 0.34070225308844143}
Iteration: 99  Options:  {'c1': 0.5079621434110699, 'c2': 2.48, 'w': 0.3403198393677058}
Best cost =  3.4261311762230905e-13
Best position =  [0.99999942 0.99999884]

Changing options clearly shows better convergence. Just 100 iterations on the rosenbrock function are enough to bring the cost to very low orders of e-10 which is comparable to the ones in academia. [2]

References:

[1] Chih, Mingchang, et al. “Particle swarm optimization with time-varying acceleration coefficients for the multidimensional knapsack problem.” Applied Mathematical Modelling 38.4 (2014): 1338-1350.

[2] Satyanarayana Daggubati, “Comparison of particle swarm optimization variants”

Use cases

These are all user-submitted use-cases on how they used PySwarms for a variety of problems:

Training a Neural Network

In this example, we’ll be training a neural network using particle swarm optimization. For this we’ll be using the standard global-best PSO pyswarms.single.GBestPSO for optimizing the network’s weights and biases. This aims to demonstrate how the API is capable of handling custom-defined functions.

For this example, we’ll try to classify the three iris species in the Iris Dataset.

[1]:
# Import modules
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_iris


# Import PySwarms
import pyswarms as ps

# Some more magic so that the notebook will reload external python modules;
# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython
%load_ext autoreload
%autoreload 2

First, we’ll load the dataset from scikit-learn. The Iris Dataset contains 3 classes for each of the iris species (iris setosa, iris virginica, and iris versicolor). It has 50 samples per class with 150 samples in total, making it a very balanced dataset. Each sample is characterized by four features (or dimensions): sepal length, sepal width, petal length, petal width.

Load the iris dataset
[9]:
data = load_iris()
[10]:
# Store the features as X and the labels as y
X = data.data
y = data.target
Constructing a custom objective function

Recall that neural networks can simply be seen as a mapping function from one space to another. For now, we’ll build a simple neural network with the following characteristics: * Input layer size: 4 * Hidden layer size: 20 (activation: \(\tanh(x)\)) * Output layer size: 3 (activation: \(softmax(x)\))

Things we’ll do: 1. Create a forward_prop method that will do forward propagation for one particle. 2. Create an overhead objective function f() that will compute forward_prop() for the whole swarm.

What we’ll be doing then is to create a swarm with a number of dimensions equal to the weights and biases. We will unroll these parameters into an n-dimensional array, and have each particle take on different values. Thus, each particle represents a candidate neural network with its own weights and bias. When feeding back to the network, we will reconstruct the learned weights and biases.

When rolling-back the parameters into weights and biases, it is useful to recall the shape and bias matrices: * Shape of input-to-hidden weight matrix: (4, 20) * Shape of input-to-hidden bias array: (20, ) * Shape of hidden-to-output weight matrix: (20, 3) * Shape of hidden-to-output bias array: (3, )

By unrolling them together, we have \((4 * 20) + (20 * 3) + 20 + 3 = 163\) parameters, or 163 dimensions for each particle in the swarm.

The negative log-likelihood will be used to compute for the error between the ground-truth values and the predictions. Also, because PSO doesn’t rely on the gradients, we’ll not be performing backpropagation (this may be a good thing or bad thing under some circumstances).

Now, let’s write the forward propagation procedure as our objective function. Let \(X\) be the input, \(z_l\) the pre-activation at layer \(l\), and \(a_l\) the activation for layer \(l\):

Neural network architecture
[11]:
n_inputs = 4
n_hidden = 20
n_classes = 3

num_samples = 150
[16]:
def logits_function(p):
    """ Calculate roll-back the weights and biases

    Inputs
    ------
    p: np.ndarray
        The dimensions should include an unrolled version of the
        weights and biases.

    Returns
    -------
    numpy.ndarray of logits for layer 2

    """
    # Roll-back the weights and biases
    W1 = p[0:80].reshape((n_inputs,n_hidden))
    b1 = p[80:100].reshape((n_hidden,))
    W2 = p[100:160].reshape((n_hidden,n_classes))
    b2 = p[160:163].reshape((n_classes,))

    # Perform forward propagation
    z1 = X.dot(W1) + b1  # Pre-activation in Layer 1
    a1 = np.tanh(z1)     # Activation in Layer 1
    logits = a1.dot(W2) + b2 # Pre-activation in Layer 2
    return logits          # Logits for Layer 2
[22]:
# Forward propagation
def forward_prop(params):
    """Forward propagation as objective function

    This computes for the forward propagation of the neural network, as
    well as the loss.

    Inputs
    ------
    params: np.ndarray
        The dimensions should include an unrolled version of the
        weights and biases.

    Returns
    -------
    float
        The computed negative log-likelihood loss given the parameters
    """

    logits = logits_function(params)

    # Compute for the softmax of the logits
    exp_scores = np.exp(logits)
    probs = exp_scores / np.sum(exp_scores, axis=1, keepdims=True)

    # Compute for the negative log likelihood

    corect_logprobs = -np.log(probs[range(num_samples), y])
    loss = np.sum(corect_logprobs) / num_samples

    return loss

Now that we have a method to do forward propagation for one particle (or for one set of dimensions), we can then create a higher-level method to compute forward_prop() to the whole swarm:

[23]:
def f(x):
    """Higher-level method to do forward_prop in the
    whole swarm.

    Inputs
    ------
    x: numpy.ndarray of shape (n_particles, dimensions)
        The swarm that will perform the search

    Returns
    -------
    numpy.ndarray of shape (n_particles, )
        The computed loss for each particle
    """
    n_particles = x.shape[0]
    j = [forward_prop(x[i]) for i in range(n_particles)]
    return np.array(j)
Performing PSO on the custom-function

Now that everything has been set-up, we just call our global-best PSO and run the optimizer as usual. For now, we’ll just set the PSO parameters arbitrarily.

[ ]:
%%time
# Initialize swarm
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9}

# Call instance of PSO
dimensions = (n_inputs * n_hidden) + (n_hidden * n_classes) + n_hidden + n_classes
optimizer = ps.single.GlobalBestPSO(n_particles=100, dimensions=dimensions, options=options)

# Perform optimization
cost, pos = optimizer.optimize(f, iters=1000)
Checking the accuracy

We can then check the accuracy by performing forward propagation once again to create a set of predictions. Then it’s only a simple matter of matching which one’s correct or not. For the logits, we take the argmax. Recall that the softmax function returns probabilities where the whole vector sums to 1. We just take the one with the highest probability then treat it as the network’s prediction.

Moreover, we let the best position vector found by the swarm be the weight and bias parameters of the network.

[20]:
def predict(pos):
    """
    Use the trained weights to perform class predictions.

    Inputs
    ------
    pos: numpy.ndarray
        Position matrix found by the swarm. Will be rolled
        into weights and biases.
    """
    logits = logits_function(pos)
    y_pred = np.argmax(logits, axis=1)
    return y_pred

And from this we can just compute for the accuracy. We perform predictions, compare an equivalence to the ground-truth value y, and get the mean.

[21]:
(predict(pos) == y).mean()
[21]:
0.9866666666666667

Inverse Kinematics Problem

In this example, we are going to use the pyswarms library to solve a 6-DOF (Degrees of Freedom) Inverse Kinematics (IK) problem by treating it as an optimization problem. We will use the pyswarms library to find an optimal solution from a set of candidate solutions.

Inverse Kinematics is one of the most challenging problems in robotics. The problem involves finding an optimal pose for a manipulator given the position of the end-tip effector as opposed to forward kinematics, where the end-tip position is sought given the pose or joint configuration. Normally, this position is expressed as a point in a coordinate system (e.g., in a Cartesian system with \(x\), \(y\) and \(z\) coordinates). However, the pose of the manipulator can also be expressed as the collection of joint variables that describe the angle of bending or twist (in revolute joints) or length of extension (in prismatic joints).

IK is particularly difficult because an abundance of solutions can arise. Intuitively, one can imagine that a robotic arm can have multiple ways of reaching through a certain point. It’s the same when you touch the table and move your arm without moving the point you’re touching the table at. Moreover, the calculation of these positions can be very difficult. Simple solutions can be found for 3-DOF manipulators but trying to solve the problem for 6 or even more DOF can lead to challenging algebraic problems.

[1]:
# Import modules
import numpy as np

# Import PySwarms
import pyswarms as ps

# Some more magic so that the notebook will reload external python modules;
# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipython
%load_ext autoreload
%autoreload 2
IK as an Optimization Problem

In this implementation, we are going to use a 6-DOF Stanford Manipulator with 5 revolute joints and 1 prismatic joint. Furthermore, the constraints of the joints are going to be as follows:

Parameters Lower Boundary Upper Boundary
\(\theta_1\) \(-\pi\) \(\pi\)
\(\theta_2\) \(-\frac{\pi}{2}\) \(\frac{\pi}{2}\)
\(d_3\) \(1\) \(3\)
\(\theta_4\) \(-\pi\) \(\pi\)
\(\theta_5\) \(-\frac{5\pi}{36}\) \(\frac{5\pi}{36}\)
\(\theta_6\) \(-\pi\) \(\pi\)

Now, if we are given an end-tip position (in this case a \(xyz\) coordinate) we need to find the optimal parameters with the constraints imposed in Table 1. These conditions are then sufficient in order to treat this problem as an optimization problem. We define our parameter vector \(\mathbf{X}\) as follows:

\[\mathbf{X}\,:=\, [ \, \theta_1 \quad \theta_2 \quad d_3\ \quad \theta_4 \quad \theta_5 \, ]\]

And for our end-tip position we define the target vector \(\mathbf{T}\) as:

\[\mathbf{T}\,:=\, [\, T_x \quad T_y \quad T_z \,]\]

We can then start implementing our optimization algorithm.

Initializing the Swarm

The main idea for PSO is that we set a swarm \(\mathbf{S}\) composed of particles \(\mathbf{P}_n\) into a search space in order to find the optimal solution. The movement of the swarm depends on the cognitive (\(c_1\)) and social (\(c_2\)) of all the particles. The cognitive component speaks of the particle’s bias towards its personal best from its past experience (i.e., how attracted it is to its own best position). The social component controls how the particles are attracted to the best score found by the swarm (i.e., the global best). High \(c_1\) paired with low \(c_2\) values can often cause the swarm to stagnate. The inverse can cause the swarm to converge too fast, resulting in suboptimal solutions.

We define our particle \(\mathbf{P}\) as:

\[\mathbf{P}\,:=\,\mathbf{X}\]

And the swarm as being composed of \(N\) particles with certain positions at a timestep \(t\):

\[\mathbf{S}_t\,:=\,[\,\mathbf{P}_1\quad\mathbf{P}_2\quad ... \quad\mathbf{P}_N\,]\]

In this implementation, we designate \(\mathbf{P}_1\) as the initial configuration of the manipulator at the zero-position. This means that the angles are equal to 0 and the link offset is also zero. We then generate the \(N-1\) particles using a uniform distribution which is controlled by the hyperparameter \(\epsilon\).

Finding the global optimum

In order to find the global optimum, the swarm must be moved. This movement is then translated by an update of the current position given the swarm’s velocity \(\mathbf{V}\). That is:

\[\mathbf{S}_{t+1} = \mathbf{S}_t + \mathbf{V}_{t+1}\]

The velocity is then computed as follows:

\[\mathbf{V}_{t+1} = w\mathbf{V}_t + c_1 r_1 (\mathbf{p}_{best} - \mathbf{p}) + c_2 r_2(\mathbf{g}_{best} - \mathbf{p})\]

Where \(r_1\) and \(r_2\) denote random values in the intervall \([0,1]\), \(\mathbf{p}_{best}\) is the best and \(\mathbf{p}\) is the current personal position and \(\mathbf{g}_{best}\) is the best position of all the particles. Moreover, \(w\) is the inertia weight that controls the “memory” of the swarm’s previous position.

Preparations

Let us now see how this works with the pyswarms library. We use the point \([-2,2,3]\) as our target for which we want to find an optimal pose of the manipulator. We start by defining a function to get the distance from the current position to the target position:

[2]:
def distance(query, target):
    x_dist = (target[0] - query[0])**2
    y_dist = (target[1] - query[1])**2
    z_dist = (target[2] - query[2])**2
    dist = np.sqrt(x_dist + y_dist + z_dist)
    return dist

We are going to use the distance function to compute the cost, the further away the more costly the position is.

The optimization algorithm needs some parameters (the swarm size, \(c_1\), \(c_2\) and \(\epsilon\)). For the options (\(c_1\),\(c_2\) and \(w\)) we have to create a dictionary and for the constraints a tuple with a list of the respective minimal values and a list of the respective maximal values. The rest can be handled with variables. Additionally, we define the joint lengths to be 3 units long:

[3]:
swarm_size = 20
dim = 6        # Dimension of X
epsilon = 1.0
options = {'c1': 1.5, 'c2':1.5, 'w':0.5}

constraints = (np.array([-np.pi , -np.pi/2 , 1 , -np.pi , -5*np.pi/36 , -np.pi]),
               np.array([np.pi  ,  np.pi/2 , 3 ,  np.pi ,  5*np.pi/36 ,  np.pi]))

d1 = d2 = d3 = d4 = d5 = d6 = 3

In order to obtain the current position, we need to calculate the matrices of rotation and translation for every joint. Here we use the Denvait-Hartenberg parameters for that. So we define a function that calculates these. The function uses the rotation angle and the extension \(d\) of a prismatic joint as input:

[4]:
def getTransformMatrix(theta, d, a, alpha):
    T = np.array([[np.cos(theta) , -np.sin(theta)*np.cos(alpha) ,  np.sin(theta)*np.sin(alpha) , a*np.cos(theta)],
                  [np.sin(theta) ,  np.cos(theta)*np.cos(alpha) , -np.cos(theta)*np.sin(alpha) , a*np.sin(theta)],
                  [0             ,  np.sin(alpha)               ,  np.cos(alpha)               , d              ],
                  [0             ,  0                           ,  0                           , 1              ]
                 ])
    return T

Now we can calculate the transformation matrix to obtain the end tip position. For this we create another function that takes our vector \(\mathbf{X}\) with the joint variables as input:

[5]:
def get_end_tip_position(params):
    # Create the transformation matrices for the respective joints
    t_00 = np.array([[1,0,0,0],[0,1,0,0],[0,0,1,0],[0,0,0,1]])
    t_01 = getTransformMatrix(params[0] , d2        , 0 , -np.pi/2)
    t_12 = getTransformMatrix(params[1] , d2        , 0 , -np.pi/2)
    t_23 = getTransformMatrix(0         , params[2] , 0 , -np.pi/2)
    t_34 = getTransformMatrix(params[3] , d4        , 0 , -np.pi/2)
    t_45 = getTransformMatrix(params[4] , 0         , 0 ,  np.pi/2)
    t_56 = getTransformMatrix(params[5] , d6        ,0  ,  0)

    # Get the overall transformation matrix
    end_tip_m = t_00.dot(t_01).dot(t_12).dot(t_23).dot(t_34).dot(t_45).dot(t_56)

    # The coordinates of the end tip are the 3 upper entries in the 4th column
    pos = np.array([end_tip_m[0,3],end_tip_m[1,3],end_tip_m[2,3]])
    return pos

The last thing we need to prepare in order to run the algorithm is the actual function that we want to optimize. We just need to calculate the distance between the position of each swarm particle and the target point:

[6]:
def opt_func(X):
    n_particles = X.shape[0]  # number of particles
    target = np.array([-2,2,3])
    dist = [distance(get_end_tip_position(X[i]), target) for i in range(n_particles)]
    return np.array(dist)
Running the algorithm

Braced with these preparations we can finally start using the algorithm:

[7]:
%%time
# Call an instance of PSO
optimizer = ps.single.GlobalBestPSO(n_particles=swarm_size,
                                    dimensions=dim,
                                    options=options,
                                    bounds=constraints)

# Perform optimization
cost, joint_vars = optimizer.optimize(opt_func, iters=1000)
2019-05-18 15:41:50,570 - pyswarms.single.global_best - INFO - Optimize for 1000 iters with {'c1': 1.5, 'c2': 1.5, 'w': 0.5}
pyswarms.single.global_best: 100%|██████████|1000/1000, best_cost=0.12
2019-05-18 15:42:07,069 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 0.11963855429879643, best pos: [-1.95893742  0.40697424  1.14317878 -0.59683209 -0.43491969 -1.54964876]
CPU times: user 6.61 s, sys: 392 ms, total: 7.01 s
Wall time: 16.5 s

Now let’s see if the algorithm really worked and test the output for joint_vars:

[8]:
print(get_end_tip_position(joint_vars))
[-2.09012905  2.07694604  3.01641479]

Hooray! That’s exactly the position we wanted the tip to be in. Of course this example is quite primitive. Some extensions of this idea could involve the consideration of the current position of the manipulator and the amount of rotation and extension in the optimization function such that the result is the path with the least movement.

{
“cells”: [
{

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“# Feature Subset Selectionn”, “In this example, we’ll be using the optimizer pyswarms.discrete.BinaryPSO to perform feature subset selection to improve classifier performance. But before we jump right on to the coding, let’s first explain some relevant concepts:”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## A short primer on feature selectionn”, “n”, “The idea for feature subset selection is to be able to find the best features that are suitable to the classification task. We must understand that not all features are created equal, and some may be more relevant than others. Thus, if we’re given an array of features, how can we know the most optimal subset? (yup, this is a rhetorical question!)n”, “n”, “For a Binary PSO, the position of the particles are expressed in two terms: 1 or 0 (or on and off). If we have a particle $x$ on $d$-dimensions, then its position can be defined as:n”, “n”, “$$x = [x_1, x_2, x_3, \dots, x_d] ~~~\text{where}~~~ x_i \in {0,1}$$n”, “n”, “In this case, the position of the particle for each dimension can be seen as a simple matter of on and off. n”, “n”, “### Feature selection and the objective functionn”, “n”, “Now, suppose that we’re given a dataset with $d$ features. What we’ll do is that we’re going to _assign each feature as a dimension of a particle_. Hence, once we’ve implemented Binary PSO and obtained the best position, we can then interpret then”, “binary array (as seen in the equation above) simply as turning a feature on and off. n”, “n”, “As an example, suppose we have a dataset with 5 features, and the final best position of the PSO is:n”, “n”, “`python\n", ">>> optimizer.best_pos\n", "np.array([0, 1, 1, 1, 0])\n", ">>> optimizer.best_cost\n", "0.00\n", "`n”, “n”, “Then this means that the second, third, and fourth (or first, second, and third in zero-index) that are turned on are the selected features for the dataset. We can then train our classifier using only these features while dropping the others. How do we then define our objective function? (Yes, another rhetorical question!). We can design our own, but for now I’ll be taking an equation from the works of [Vieira, Mendoca, Sousa, et al. (2013)](http://www.sciencedirect.com/science/article/pii/S1568494613001361).n”, “n”, “$$f(X) = \alpha(1-P) + (1-\alpha) \left(\dfrac{N_f}{N_t}\right)$$n”, “n”, “Where $\alpha$ is a hyperparameter that decides the tradeoff between the classifier performance $P$, and the size of the feature subset $N_f$ with respect to the total number of features $N_t$. The classifier performance can be the accuracy, F-score, precision, and so on.”

]

}, {

“cell_type”: “code”, “execution_count”: 1, “metadata”: {}, “outputs”: [], “source”: [

“# Import modulesn”, “import numpy as npn”, “import seaborn as snsn”, “import pandas as pdn”, “import randomn”, “n”, “# Import PySwarmsn”, “import pyswarms as psn”, “n”, “# Some more magic so that the notebook will reload external python modules;n”, “# see http://stackoverflow.com/questions/1907993/autoreload-of-modules-in-ipythonn”, “%load_ext autoreloadn”, “%autoreload 2n”, “%matplotlib inline”

]

}, {

“cell_type”: “code”, “execution_count”: 2, “metadata”: {}, “outputs”: [], “source”: [

“RANDOM_SEED = 42n”, “random.seed(RANDOM_SEED)n”, “np.random.seed(RANDOM_SEED)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“### Generating a toy dataset using scikit-learnn”, “We’ll be using sklearn.datasets.make_classification to generate a 100-sample, 15-dimensional dataset with three classes. We will then plot the distribution of the features in order to give us a qualitative assessment of the feature-space.n”, “n”, “For our toy dataset, we will be rigging some parameters a bit. Out of the 10 features, we’ll have only 5 that are informative, 5 that are redundant, and 2 that are repeated. Hopefully, we get to have Binary PSO select those that are informative, and prune those that are redundant or repeated.”

]

}, {

“cell_type”: “code”, “execution_count”: 3, “metadata”: {}, “outputs”: [], “source”: [

“from sklearn.datasets import make_classificationn”, “X, y = make_classification(n_samples=100, n_features=15, n_classes=3, n”, ” n_informative=4, n_redundant=1, n_repeated=2, n”, ” random_state=1)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“We will then use a simple logistic regression technique using sklearn.linear_model.LogisticRegression to perform classification. A simple test of accuracy will be used to assess the performance of the classifier.”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## Writing the custom-objective functionn”, “As seen above, we can write our objective function by simply taking the performance of the classifier (in this case, the accuracy), and the size of the feature subset divided by the total (that is, divided by 10), to return an error in the data. We’ll now write our custom-objective function”

]

}, {

“cell_type”: “code”, “execution_count”: 4, “metadata”: {}, “outputs”: [], “source”: [

“from sklearn import linear_modeln”, “n”, “# Create an instance of the classifiern”, “classifier = linear_model.LogisticRegression()n”, “n”, “# Define objective functionn”, “def f_per_particle(m, alpha):n”, ” “”“Computes for the objective function per particlen”, ” n”, ” Inputsn”, ” ——n”, ” m : numpy.ndarrayn”, ” Binary mask that can be obtained from BinaryPSO, willn”, ” be used to mask features.n”, ” alpha: float (default is 0.5)n”, ” Constant weight for trading-off classifier performancen”, ” and number of featuresn”, ” n”, ” Returnsn”, ” ——-n”, ” numpy.ndarrayn”, ” Computed objective functionn”, ” “”“n”, ” total_features = 15n”, ” # Get the subset of the features from the binary maskn”, ” if np.count_nonzero(m) == 0:n”, ” X_subset = Xn”, ” else:n”, ” X_subset = X[:,m==1]n”, ” # Perform classification and store performance in Pn”, ” classifier.fit(X_subset, y)n”, ” P = (classifier.predict(X_subset) == y).mean()n”, ” # Compute for the objective functionn”, ” j = (alpha * (1.0 - P) n”, ” + (1.0 - alpha) * (X_subset.shape[1] / total_features))n”, ” n”, ” return j”

]

}, {

“cell_type”: “code”, “execution_count”: 5, “metadata”: {}, “outputs”: [], “source”: [

“def f(x, alpha=0.88):n”, ” “”“Higher-level method to do classification in the n”, ” whole swarm.n”, ” n”, ” Inputsn”, ” ——n”, ” x: numpy.ndarray of shape (n_particles, dimensions)n”, ” The swarm that will perform the searchn”, ” n”, ” Returnsn”, ” ——-n”, ” numpy.ndarray of shape (n_particles, )n”, ” The computed loss for each particlen”, ” “”“n”, ” n_particles = x.shape[0]n”, ” j = [f_per_particle(x[i], alpha) for i in range(n_particles)]n”, ” return np.array(j)n”, ” “

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“## Using Binary PSOn”, “With everything set-up, we can now use Binary PSO to perform feature selection. For now, we’ll be doing a global-best solution by setting the number of neighbors equal to the number of particles. The hyperparameters are also set arbitrarily. Moreso, we’ll also be setting the distance metric as 2 (truth is, it’s not really relevant because each particle will see one another).”

]

}, {

“cell_type”: “code”, “execution_count”: 6, “metadata”: {}, “outputs”: [

{

“name”: “stderr”, “output_type”: “stream”, “text”: [

“2020-05-22 10:57:22,248 - pyswarms.discrete.binary - INFO - Optimize for 1000 iters with {‘c1’: 0.5, ‘c2’: 0.5, ‘w’: 0.9, ‘k’: 30, ‘p’: 2}n”, “pyswarms.discrete.binary: 100%|██████████|1000/1000, best_cost=0.258n”, “2020-05-22 10:59:33,875 - pyswarms.discrete.binary - INFO - Optimization finished | best cost: 0.2584, best pos: [1 0 0 0 0 1 1 0 1 1 0 0 0 1 1]n”

]

}, {

“name”: “stdout”, “output_type”: “stream”, “text”: [

“CPU times: user 2min 12s, sys: 2.77 s, total: 2min 15sn”, “Wall time: 2min 11sn”

]

}

], “source”: [

“%%timen”, “# Initialize swarm, arbitraryn”, “options = {‘c1’: 0.5, ‘c2’: 0.5, ‘w’:0.9, ‘k’: 30, ‘p’:2}n”, “n”, “# Call instance of PSOn”, “dimensions = 15 # dimensions should be the number of featuresn”, “optimizer = ps.discrete.BinaryPSO(n_particles=30, dimensions=dimensions, options=options)n”, “n”, “# Perform optimizationn”, “cost, pos = optimizer.optimize(f, iters=1000)”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“We can then train the classifier using the positions found by running another instance of logistic regression. We can compare the performance when we’re using the full set of features”

]

}, {

“cell_type”: “code”, “execution_count”: 7, “metadata”: {}, “outputs”: [

{

“name”: “stdout”, “output_type”: “stream”, “text”: [

“Subset performance: 0.770n”

]

}

], “source”: [

“# Create two instances of LogisticRegressionn”, “classfier = linear_model.LogisticRegression()n”, “n”, “# Get the selected features from the final positionsn”, “X_selected_features = X[:,pos==1] # subsetn”, “n”, “# Perform classification and store performance in Pn”, “classifier.fit(X_selected_features, y)n”, “n”, “# Compute performancen”, “subset_performance = (classifier.predict(X_selected_features) == y).mean()n”, “n”, “n”, “print(‘Subset performance: %.3f’ % (subset_performance))”

]

}, {

“cell_type”: “markdown”, “metadata”: {}, “source”: [

“Another important advantage that we have is that we were able to reduce the features (or do dimensionality reduction) on our data. This can save us from the [curse of dimensionality](http://www.stat.ucla.edu/~sabatti/statarray/textr/node5.html), and may in fact speed up our classification.n”, “n”, “Let’s plot the feature subset that we have:”

]

}, {

“cell_type”: “code”, “execution_count”: 8, “metadata”: {}, “outputs”: [

{
“data”: {
“text/plain”: [
“<seaborn.axisgrid.PairGrid at 0x7f176083a9d0>”

]

}, “execution_count”: 8, “metadata”: {}, “output_type”: “execute_result”

}, {

“data”: {

“image/png”: “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UW5hpyMRERERERERERGpKlc6HZ/K9AmEwXOKDc8pNlo8p3The9curZ9fKvG95watvheeV+y0eE5q0dJ708q58DxCaelcfLRwTpk+h0wfH8j8OWT6+NlKq//deF7x0ep5pV1OzOlIRERERERERERE2pErIx2JiIiIiIiIiIhII9jpSERERERERERERKpipyMRERERERERERGpip2OREREREREREREpKqs6nS84IILZAD84U8mfpLC7PIngz9JYXb5k8GfpDC7/MngT1KYXf5k8CcpzC5/MviTFGaXPxn8yXlZ1enY2tqa6VMgSgizS9mK2aVsxexStmJ2KVsxu5StmF2i1MmqTkciIiIiIiIiIiLSPnY6EhERERERERERkarY6UhERERERERERESq0mf6BEiDJAnotQFuF6A3AgVWQGT/dM7j5065jPkmGsTyQKnGjBGlF8scEWkUOx0pmCQBLTuBv18NdBwESscA330RqJzKC1cu4+dOuYz5JhrE8kCpxowRpRfLHBFpGGshCtZrG7xgAd5//3619/eUu/i5Uy5jvokGsTxQqjFjROnFMkcp9slXbXh3ZzNcbinTp0JZiCMdKZjbNXjB8uk46P095S5+7pTLmG+iQSwPlGrMGFF6scxRCv3q9Z14dt1+AMAp4y144cZTYNBx7BrFjmmhYHqjd0h+oNIx3t9T7uLnTrmM+SYaxPJAqcaMEaUXyxylyH/qbHh23X6cM6US158+Dhv22/GntXszfVqUZdjpSMEKrN45QHwXLt+cIAXWzJ4XpRY/d8plzDfRIJYHSjVmjCi9WOYoRX63ag9GFOdh/mnjcP60ETh5vAV/+Wg/evrdmT41yiJ8vJqCiaJ30uEbV3P1s+GEnzvlMuabaBDLA6UaM0aUXixzlALbGzqxraET1542Dka9N0uXHVeNT/fb8Y+N9bjhjPEZPkPKFux0pFCiCBRWZfosKN34uVMuY76JBrE8UKoxY0TpxTJHKntp00Hk6UWceVSF/3cTrYWYaDXj1S2H2OlIMePXH0REREREREREBEmSseqLZhw/uhQFxuBxaqeML8f2Q52ot/dm6Owo27DTkYiIiIiIiIiIsLWhA7bufswYWxby2injLQCAt3c0pfu0KEux05GIiIiIiIiIiLBmdwtEAThhdGinY2VxPkaXmfDBl7YMnBllI3Y6EhERERER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n”, “text/plain”: [

“<Figure size 1302.38x1260 with 56 Axes>”

]

}, “metadata”: {

“needs_background”: “light”

}, “output_type”: “display_data”

}

], “source”: [

“# Plot toy dataset per featuren”, “df1 = pd.DataFrame(X_selected_features)n”, “df1[‘labels’] = pd.Series(y)n”, “n”, “sns.pairplot(df1, hue=’labels’)”

]

}

], “metadata”: {

“kernelspec”: {
“display_name”: “Python 3”, “language”: “python”, “name”: “python3”

}, “language_info”: {

“codemirror_mode”: {
“name”: “ipython”, “version”: 3

}, “file_extension”: “.py”, “mimetype”: “text/x-python”, “name”: “python”, “nbconvert_exporter”: “python”, “pygments_lexer”: “ipython3”, “version”: “3.7.6”

}

}, “nbformat”: 4, “nbformat_minor”: 2

} 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Wfi2hGfj6MPDat8DFbh1Uf91h8DvgcpEWQZVnvMRAREREREREREREREREREREREWUFzzBFRERERERERERERERERERERESWwQVTRERERERERERERERERERERERkGVwwRURERERERERERERERERERERElsEFU0REREREREREREREREREREREZBlcMEVERERERERERERERERERERERJbBBVNERERERERERERERERERERERGQZXDBFRERERERERERERERERERERESWwQVTRERERERERERERERERERERERkGVwwRURERERERERERERERERERERElsEFU0REREREREREREREREREREREZBlcMEVERERERERERERERERERERERJbBBVNERERERERERERERERERERERGQZXDBFRERERERERERERERERERERESWwQVTRERERERERERERERERERERERkGVwwRURERERERERERERERERERERElmG6BVNnnnmmDIA33tS+ZQ0zzJtGt6xgfnnT6JY1zDBvGt2ygvnlTaNb1jDDvGl0ywrmlzeNblnDDPOmwS1rmF/eNLplBfPLm0a3rGGGedPolhXML28a3bKGGeZNoxuNYboFUx0dHXoPgSgjzDCZGfNLZscMk5kxv2R2zDCZGfNLZscMk5kxv2RmzC+ZHTNMZsb8ktkxw0TaM92CKSIiIiIiIiIiIiIiIiIiIiIionRxwRQREREREREREREREREREREREVkGF0wREREREREREREREREREREREZFlcMEUERERERERERERkLc3+gAAIABJREFUERERERERERFZhl3vARARERERERERERERERERGdVnbX34YJcfMys8WHRYCQRB0HtIRERElCEumMomSQIG2oFQALA7gIJyQORJvohSxrlEqWJmiMyL85eMitkkrTBblEuYZ8oUM0SkPs4rMipmkwzssXV78MvnP0FYlgEA58ybit9eOB8OOzNKOYR1mMyIuaUM6b5gShAEJ4B/AsiHMp6/yLJ8i76j0oAkAW1bgScvArqaAG8t8O0ngIq5nLREqeBcolQxM0TmxflLRsVsklaYLcolzDNlihkiUh/nFRkVs0kG9t7Og7j5b1swv9aLS46bjnW7/Hi6YS8KHDbc9c1j9B4ekTpYh8mMmFtSgRGSMgzgVFmWjwEwH8CZgiAcr/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

Solving an electric circuit using Particle Swarm Optimization

Introduction

PSO can be utilized in a wide variety of fields. In this example, the problem consists of analysing a given electric circuit and finding the electric current that flows through it. To accomplish this, the pyswarms library will be used to solve a non-linear equation by restructuring it as an optimization problem. The circuit is composed by a source, a resistor and a diode, as shown below.

Circuit

Mathematical Formulation

Kirchhoff’s voltage law states that the directed sum of the voltages around any closed loop is zero. In other words, the sum of the voltages of the passive elements must be equal to the sum of the voltages of the active elements, as expressed by the following equation:

$U = v_D + v_R $, where \(U\) represents the voltage of the source and, \(v_D\) and \(v_R\) represent the voltage of the diode and the resistor, respectively.

To determine the current flowing through the circuit, \(v_D\) and \(v_R\) need to be defined as functions of \(I\). A simplified Shockley equation will be used to formulate the current-voltage characteristic function of the diode. This function relates the current that flows through the diode with the voltage across it. Both \(I_s\) and \(v_T\) are known properties.

\(I = I_s e^{\frac{v_D}{v_T}}\)

Where:

  • \(I\) : diode current
  • \(I_s\) : reverse bias saturation current
  • \(v_D\) : diode voltage
  • \(v_T\) : thermal voltage

Which can be formulated over \(v_D\):

\(v_D = v_T \log{\left |\frac{I}{I_s}\right |}\)

The voltage over the resistor can be written as a function of the resistor’s resistance \(R\) and the current \(I\):

\(v_R = R I\)

And by replacing these expressions on the Kirschhoff’s voltage law equation, the following equation is obtained:

\(U = v_T \log{\left |\frac{I}{I_s}\right |} + R I\)

To find the solution of the problem, the previous equation needs to be solved for \(I\), which is the same as finding \(I\) such that the cost function \(c\) equals zero, as shown below. By doing this, solving for \(I\) is restructured as a minimization problem. The absolute value is necessary because we don’t want to obtain negative currents.

\(c = \left | U - v_T \log{\left | \frac{I}{I_s} \right |} - RI \right |\)

Known parameter values

The voltage of the source is \(10 \space V\) and the resistance of the resistor is \(100 \space \Omega\). The diode is a silicon diode and it is assumed to be at room temperature.

\(U = 10 \space V\)

\(R = 100 \space \Omega\)

\(I_s = 9.4 \space pA = 9.4 \times 10^{-12} \space A\) (reverse bias saturation current of silicon diodes at room temperature, \(T=300 \space K\))

\(v_T = 25.85 \space mV = 25.85 \times 10^{-3} \space V\) (thermal voltage at room temperature, \(T=300 \space K\))

Optimization
[1]:
# Import modules
import sys
import numpy as np
import matplotlib.pyplot as plt

# Import PySwarms
import pyswarms as ps
[2]:
print('Running on Python version: {}'.format(sys.version))
Running on Python version: 3.6.8 |Anaconda, Inc.| (default, Dec 30 2018, 01:22:34)
[GCC 7.3.0]
Defining the cost fuction

The first argument of the cost function is a numpy.ndarray. Each dimension of this array represents an unknown variable. In this problem, the unknown variable is just \(I\), thus the first argument is a unidimensional array. As default, the thermal voltage is assumed to be \(25.85 \space mV\).

[3]:
def cost_function(I):

    #Fixed parameters
    U = 10
    R = 100
    I_s = 9.4e-12
    v_t = 25.85e-3

    c = abs(U - v_t * np.log(abs(I[:, 0] / I_s)) - R * I[:, 0])

    return c
Setting the optimizer

To solve this problem, the global-best optimizer is going to be used.

[4]:
%%time
# Set-up hyperparameters
options = {'c1': 0.5, 'c2': 0.3, 'w':0.3}

# Call instance of PSO
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=1, options=options)

# Perform optimization
cost, pos = optimizer.optimize(cost_function, iters=30)
2019-05-18 15:41:35,474 - pyswarms.single.global_best - INFO - Optimize for 30 iters with {'c1': 0.5, 'c2': 0.3, 'w': 0.3}
pyswarms.single.global_best: 100%|██████████|30/30, best_cost=14
2019-05-18 15:41:35,863 - pyswarms.single.global_best - INFO - Optimization finished | best cost: 14.045352861989468, best pos: [0.23426529]
CPU times: user 111 ms, sys: 12.1 ms, total: 123 ms
Wall time: 411 ms
[5]:
print(pos[0])
0.23426529444241187
[6]:
print(cost)
14.045352861989468
Checking the solution

The current flowing through the circuit is approximately \(0.094 \space A\) which yields a cost of almost zero. The graph below illustrates the relationship between the cost \(c\) and the current \(I\). As shown, the cost reaches its minimum value of zero when \(I\) is somewhere close to \(0.09\).

The use of reshape(100, 1) is required since np.linspace(0.001, 0.1, 100) returns an array with shape (100,) and first argument of the cost function must be a unidimensional array, that is, an array with shape (100, 1).

[7]:
x = np.linspace(0.001, 0.1, 100).reshape(100, 1)
y = cost_function(x)

plt.plot(x, y)
plt.xlabel('Current I [A]')
plt.ylabel('Cost');
_images/examples_usecases_electric_circuit_problem_15_0.png

Another way of solving non-linear equations is by using non-linear solvers implemented in libraries such as scipy. There are different solvers that one can choose which correspond to different numerical methods. We are going to use fsolve, which is a general non-linear solver that finds the root of a given function.

Unlike pyswarms, the function (in this case, the cost function) to be used in fsolve must have as first argument a single value. Moreover, numerical methods need an initial guess for the solution, which can be made from the graph above.

[8]:
# Import non-linear solver
from scipy.optimize import fsolve
[9]:
c = lambda I: abs(10 - 25.85e-3 * np.log(abs(I / 9.4e-12)) - 100 * I)

initial_guess = 0.09

current_I = fsolve(func=c, x0=initial_guess)

print(current_I[0])
0.09404768643017938

The best solution value found using the PSO method was approximately the same as the one found using a non-linear solver, about \(0.094 \space A\). In fact, the relative error was less than \(1 \times 10^{-5}\).

Contributing

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.

You can contribute in many ways:

Types of Contributions

Report Bugs

Report bugs at https://github.com/ljvmiranda921/pyswarms/issues.

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your local setup that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.
Fix Bugs

Look through the GitHub issues for bugs. Anything tagged with “bug” and “help wanted” is open to whoever wants to implement it.

Implement Features

Look through the GitHub issues for features. Anything tagged with “enhancement” and “help wanted” is open to whoever wants to implement it. Those that are tagged with “first-timers-only” is suitable for those getting started in open-source software.

Write Documentation

PySwarms could always use more documentation, whether as part of the official PySwarms docs, in docstrings, or even on the web in blog posts, articles, and such.

Submit Feedback

The best way to send feedback is to file an issue at https://github.com/ljvmiranda921/pyswarms/issues.

If you are proposing a feature:

  • Explain in detail how it would work.
  • Keep the scope as narrow as possible, to make it easier to implement.
  • Remember that this is a volunteer-driven project, and that contributions are welcome :)

Get Started!

Ready to contribute? Here’s how to set up pyswarms for local development.

  1. Fork the pyswarms repo on GitHub.

  2. Clone your fork locally:

    $ git clone git@github.com:your_name_here/pyswarms.git
    
  3. Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development:

    $ mkvirtualenv pyswarms
    $ cd pyswarms/
    $ python setup.py develop
    
  4. Create a branch for local development:

    $ git checkout -b name-of-your-bugfix-or-feature
    

    Now you can make your changes locally.

  5. When you’re done making changes, check that your changes pass flake8 and the tests, including testing other Python versions with tox. In addition, ensure that your code is formatted using black:

    $ flake8 pyswarms tests
    $ black pyswarms tests
    $ python setup.py test or py.test
    $ tox
    

    To get flake8, black, and tox, just pip install them into your virtualenv. If you wish, you can add pre-commit hooks for both flake8 and black to make all formatting easier.

  6. Commit your changes and push your branch to GitHub:

    $ git add .
    $ git commit -m "Your detailed description of your changes."
    $ git push origin name-of-your-bugfix-or-feature
    

    In brief, commit messages should follow these conventions:

    • Always contain a subject line which briefly describes the changes made. For example “Update CONTRIBUTING.rst”.
    • Subject lines should not exceed 50 characters.
    • The commit body should contain context about the change - how the code worked before, how it works now and why you decided to solve the issue in the way you did.

    More detail on commit guidelines can be found at https://chris.beams.io/posts/git-commit

  7. Submit a pull request through the GitHub website.

Pull Request Guidelines

Before you submit a pull request, check that it meets these guidelines:

  1. The pull request should include tests.
  2. If the pull request adds functionality, the docs should be updated. Put your new functionality into a function with a docstring, and add the feature to the list in README.rst.
  3. The pull request should work for Python 2.7, 3.4, 3.5, and above. Check https://travis-ci.org/ljvmiranda921/pyswarms/pull_requests and make sure that the tests pass for all supported Python versions.

Understanding the PySwarms API

There are three main layers in PySwarms’ main API:

  • Optimizers: includes all off-the-shelf implementations of most swarm intelligence algorithms
  • Base: base API where most Optimizer implementations were based upon. Each Base module is designed with respect to the problem domain they’re trying to solve: single-continuous, discrete, (in the future) multiobjective, constrained, etc.
  • Backend: backend API that exposes common operations for any swarm algorithm such as swarm initialization, global best computation, nearest neighbor search, etc.

You can find the structure of the main PySwarms API in the figure below:

PySwarms API

When contributing to PySwarms, you can start off with any of the Layers specified above. Right now, we would really appreciate contributions from the Base Layer below. Some of which that need some dedicated contributions:

  • ConstrainedOptimizer (in Base Layer)
  • MultiObjectiveOptimizer (in Base Layer)
  • Different Topologies (in Backend Layer)

If we can have a strong set of native APIs for the low-level layers, it will then be very easy to implement different swarm algorithms. Of course, for your personal needs, you can simply inherit any of the classes in PySwarms and modify them according to your own specifications.

Remember, when you want to implement your own Optimizer, there is no need to go from Backend to Optimizers layer. Instead, you can just import the pyswarms.backend.swarms.Swarm class and the classes in the pyswarms.backend.topology module.

Writing your own optimization loop

The backend module provides a lot of helper methods for you to customize your swarm implementation. This gives you a black-box approach by requiring you to write your own optimization-loop.

There are two important components for any swarm implementation:

  • The Swarm class, containing all important attributes and properties of the swarm; and
  • The Topology class, governing how the swarm will behave during optimization.
Writing your own optimization loop

The main idea is that for every iteration, you interact with the Swarm class using the methods found in the Topology class (or optionally, in pyswarms.backend.operators). You continuously take the attributes present in Swarm, and update them using the operations your algorithm requires. Together with some methods found in pyswarms.backend.generators and pyswarms.backend.operators, it is possible to create different kinds of swarm implementations.

The Swarm Class

pyswarms.backend.swarms.Swarm acts as a data-class that keeps all necessary attributes in a given swarm implementation. You initialize it by providing the initial position and velocity matrices. For the current iteration, you can obtain the following information from the class:

  • position: the current position-matrix of the swarm. Each row is a particle and each column is its position on a given dimension.
  • velocity: the current velocity-matrix of the swarm. Each row is a particle and each column is its velocity on a given dimension.
  • pbest_pos: the personal best position of each particle that corresponds to the personal best cost.
  • pbest_cost: the personal best fitness attained by the particle since the first iteration.
  • best_pos: the best position found by the swarm that corresponds to the best cost.
  • best_cost: the best fitness found by the swarm.
  • options: additional options that you can use for your particular needs. As an example, the GlobalBestPSO implementation uses this to store the cognitive and social parameters of the swarm.

The Topology Class

pyswarms.backend.base.topology houses all operations that you can use on the Swarm attributes. Currently, the Star and Ring topologies are implemented, but more topologies will still be done in the future. A Topology implements three methods governing swarm behavior:

  • compute_gbest: computes the best particle (both cost and position) given a swarm instance.
  • compute_position: computes the next position of the swarm given its current position.
  • compute_velocity: computes the velocity of the swarm given its attributes.

Needless to say, these three methods will differ depending on the topology present. All these methods take in an instance of the Swarm class, and outputs the necessary matrices. The advantage of using this class is that it abstracts away all the internals of implementing a swarm algorithm. You just need to provide the topology, and call its methods right away.

Contributing your own optimizer

PySwarms aims to be the go-to library for various PSO implementations, so if you are a researcher in swarm intelligence or a developer who wants to contribute, then read on this guide!

As a preliminary, here is a checklist whenever you will implement an optimizer:

  • Propose an optimizer
  • Write optimizer by inheriting from base classes
  • Write a unit test

Proposing an optimizer

We wanted to make sure that PySwarms is highly-usable, and thus it is important that optimizers included in this library are either (1) classic textbook-PSO techniques or (2) highly-cited, published, optimization algorithms.

In case you wanted to include your optimization algorithm in this library, please raise an issue and add a short abstract on what your optimizer does. A link to a published paper (it’s okay if it’s behind a paywall) would be really helpful!

Inheriting from base classes

Most optimizers in this library inherit its attributes and methods from a set of built-in base classes. You can check the existing classes in pyswarms.base.

For example, if we take the pyswarms.base.base_single class, a base-class for standard single-objective continuous optimization algorithms such as global-best PSO (pyswarms.single.global_best) and local-best PSO (pyswarms.single.local_best), we can see that it inherits a set of methods as seen below:

Inheritance from base class

The required methods can be seen in the base classes, and will raise a NotImplementedError if not called. Additional methods, private or not, can also be added depending on the needs of your optimizer.

A short note on keyword arguments

The role of keyword arguments, or kwargs in short, is to act as a container for all other parameters needed for the optimizer. You can define these things in your code, and create assertions to make all of them required. However, note that in some implementations, required options might include c1, c2, and w. This is the case in pyswarms.base.bases for instance.

A short note on assertions()

You might notice that in most base classes, an assertions() method is being called. This aims to check if the user-facing input are correct. Although the method is called “assertions”, please make all user-facing catches as raised Exceptions.

A short note on __init__.py

We make sure that everything can be imported when the whole pyswarms library is called. Thus, please make sure to also edit the accompanying __init__.py file in the directory you are working on.

For example, if you write your optimizer class MyOptimizer inside a file called my_optimizer.py, and you are working under the /single directory, please update the __init__.py like the following:

from .global_best import GlobalBestPSO
from .local_best import LocalBestPSO
# Add your module
from .my_optimizer import MyOptimizer

__all__ = [
    "GlobalBestPSO",
    "LocalBestPSO",
    "MyOptimizer" # Add your class
    ]

This ensures that it will be automatically initialized when the whole library is imported.

Writing unit tests

Testing is an important element of developing PySwarms and we want everything to be as smooth as possible. Especially, when working on the build and integrating new features. In this case, we provide the tests module in the package. For writing the test, we use the pytest module. In case you add a test for your optimizer, use the same naming conventions that were used in the existing ones.

You can perform separate checks by

$ python -m pytest tests.optimizers.<test_myoptimizer>

For more details on running the tests see here.

Backend

The main workhorse of PySwarms is the backend module. It contains various primitive methods and classes to help you create your own custom swarm implementation. The high-level PSO implementations in this library such as GlobalBestPSO and LocalBestPSO were built using the backend module.

pyswarms.backend package

You can import all the native helper methods in this package using the command:

import pyswarms.backend as P

Then call the methods found in each module. Note that these methods interface with the Swarm class provided in the pyswarms.backend.swarms module.

pyswarms.backend.generators module

Swarm Generation Backend

This module abstracts how a swarm is generated. You can see its implementation in our base classes. In addition, you can use all the methods here to dictate how a swarm is initialized for your custom PSO.

pyswarms.backend.generators.create_swarm(n_particles, dimensions, discrete=False, binary=False, options={}, bounds=None, center=1.0, init_pos=None, clamp=None)[source]

Abstract the generate_swarm() and generate_velocity() methods

Parameters:
  • n_particles (int) – number of particles to be generated in the swarm.
  • dimensions (int) – number of dimensions to be generated in the swarm
  • discrete (bool) – Creates a discrete swarm. Default is False
  • options (dict, optional) – Swarm options, for example, c1, c2, etc.
  • binary (bool) – generate a binary matrix, Default is False
  • bounds (tuple of np.ndarray or list) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,). Default is None
  • center (numpy.ndarray, optional) – a list of initial positions for generating the swarm. Default is 1
  • init_pos (numpy.ndarray, optional) – option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly.
  • clamp (tuple of floats, optional) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.
Returns:

a Swarm class

Return type:

pyswarms.backend.swarms.Swarm

pyswarms.backend.generators.generate_discrete_swarm(n_particles, dimensions, binary=False, init_pos=None)[source]

Generate a discrete swarm

Parameters:
  • n_particles (int) – number of particles to be generated in the swarm.
  • dimensions (int) – number of dimensions to be generated in the swarm.
  • binary (bool) – generate a binary matrix. Default is False
  • init_pos (numpy.ndarray, optional) – option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly. Default is None
Returns:

swarm matrix of shape (n_particles, n_dimensions)

Return type:

numpy.ndarray

Raises:
  • ValueError – When init_pos during binary=True does not contain two unique values.
  • TypeError – When the argument passed to n_particles or dimensions is incorrect.
pyswarms.backend.generators.generate_swarm(n_particles, dimensions, bounds=None, center=1.0, init_pos=None)[source]

Generate a swarm

Parameters:
  • n_particles (int) – number of particles to be generated in the swarm.
  • dimensions (int) – number of dimensions to be generated in the swarm
  • bounds (tuple of numpy.ndarray or list, optional) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,). Default is None
  • center (numpy.ndarray or float, optional) – controls the mean or center whenever the swarm is generated randomly. Default is 1
  • init_pos (numpy.ndarray, optional) – option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly. Default is None.
Returns:

swarm matrix of shape (n_particles, n_dimensions)

Return type:

numpy.ndarray

Raises:
  • ValueError – When the shapes and values of bounds, dimensions, and init_pos are inconsistent.
  • TypeError – When the argument passed to bounds is not an iterable.
pyswarms.backend.generators.generate_velocity(n_particles, dimensions, clamp=None)[source]

Initialize a velocity vector

Parameters:
  • n_particles (int) – number of particles to be generated in the swarm.
  • dimensions (int) – number of dimensions to be generated in the swarm.
  • clamp (tuple of floats, optional) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping. Default is None
Returns:

velocity matrix of shape (n_particles, dimensions)

Return type:

numpy.ndarray

pyswarms.backend.handlers module

Handlers

This module provides Handler classes for the position, velocity and time varying acceleration coefficients of particles. Particles that do not stay inside these boundary conditions have to be handled by either adjusting their position after they left the bounded search space or adjusting their velocity when it would position them outside the search space. In particular, this approach is important if the optimium of a function is near the boundaries. For the following documentation let \(x_{i, t, d} \ \) be the \(d\) th coordinate of the particle \(i\) ‘s position vector at the time \(t\), \(lb\) the vector of the lower boundaries and \(ub\) the vector of the upper boundaries. The OptionsHandler class provide methods which allow faster and better convergence by varying the options \(w, c_{1}, c_{2}\) with various strategies.

The algorithms in the BoundaryHandler and VelocityHandler classes are adapted from [SH2010]

[SH2010] Sabine Helwig, “Particle Swarms for Constrained Optimization”, PhD thesis, Friedrich-Alexander Universität Erlangen-Nürnberg, 2010.

class pyswarms.backend.handlers.BoundaryHandler(strategy)[source]
intermediate(position, bounds, **kwargs)[source]

Set the particle to an intermediate position

This method resets particles that exceed the bounds to an intermediate position between the boundary and their earlier position. Namely, it changes the coordinate of the out-of-bounds axis to the middle value between the previous position and the boundary of the axis. The following equation describes this strategy:

\[\begin{split}x_{i, t, d} = \begin{cases} \frac{1}{2} \left (x_{i, t-1, d} + lb_d \right) & \quad \text{if }x_{i, t, d} < lb_d \\ \frac{1}{2} \left (x_{i, t-1, d} + ub_d \right) & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\end{split}\]
nearest(position, bounds, **kwargs)[source]

Set position to nearest bound

This method resets particles that exceed the bounds to the nearest available boundary. For every axis on which the coordiantes of the particle surpasses the boundary conditions the coordinate is set to the respective bound that it surpasses. The following equation describes this strategy:

\[\begin{split}x_{i, t, d} = \begin{cases} lb_d & \quad \text{if }x_{i, t, d} < lb_d \\ ub_d & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\end{split}\]
periodic(position, bounds, **kwargs)[source]

Sets the particles a periodic fashion

This method resets the particles that exeed the bounds by using the modulo function to cut down the position. This creates a virtual, periodic plane which is tiled with the search space. The following equation describtes this strategy:

\begin{gather*} x_{i, t, d} = \begin{cases} ub_d - (lb_d - x_{i, t, d}) \mod s_d & \quad \text{if }x_{i, t, d} < lb_d \\ lb_d + (x_{i, t, d} - ub_d) \mod s_d & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\\ \\ \text{with}\\ \\ s_d = |ub_d - lb_d| \end{gather*}
random(position, bounds, **kwargs)[source]

Set position to random location

This method resets particles that exeed the bounds to a random position inside the boundary conditions.

reflective(position, bounds, **kwargs)[source]

Reflect the particle at the boundary

This method reflects the particles that exceed the bounds at the respective boundary. This means that the amount that the component which is orthogonal to the exceeds the boundary is mirrored at the boundary. The reflection is repeated until the position of the particle is within the boundaries. The following algorithm describes the behaviour of this strategy:

\begin{gather*} \text{while } x_{i, t, d} \not\in \left[lb_d,\,ub_d\right] \\ \text{ do the following:}\\ \\ x_{i, t, d} = \begin{cases} 2\cdot lb_d - x_{i, t, d} & \quad \text{if } x_{i, t, d} < lb_d \\ 2\cdot ub_d - x_{i, t, d} & \quad \text{if } x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases} \end{gather*}
shrink(position, bounds, **kwargs)[source]

Set the particle to the boundary

This method resets particles that exceed the bounds to the intersection of its previous velocity and the boundary. This can be imagined as shrinking the previous velocity until the particle is back in the valid search space. Let \(\sigma_{i, t, d}\) be the \(d\) th shrinking value of the \(i\) th particle at the time \(t\) and \(v_{i, t}\) the velocity of the \(i\) th particle at the time \(t\). Then the new position is computed by the following equation:

\begin{gather*} \mathbf{x}_{i, t} = \mathbf{x}_{i, t-1} + \sigma_{i, t} \mathbf{v}_{i, t} \\ \\ \text{with} \\ \\ \sigma_{i, t, d} = \begin{cases} \frac{lb_d-x_{i, t-1, d}}{v_{i, t, d}} & \quad \text{if } x_{i, t, d} < lb_d \\ \frac{ub_d-x_{i, t-1, d}}{v_{i, t, d}} & \quad \text{if } x_{i, t, d} > ub_d \\ 1 & \quad \text{otherwise} \end{cases} \\ \\ \text{and} \\ \\ \sigma_{i, t} = \min_{d=1...n} \sigma_{i, t, d} \\ \end{gather*}
class pyswarms.backend.handlers.HandlerMixin[source]

A HandlerMixing class

This class offers some basic functionality for the Handlers.

class pyswarms.backend.handlers.OptionsHandler(strategy)[source]
exp_decay(start_opts, opt, **kwargs)[source]

Exponentially decreasing between \(w_{start}\) and \(w_{end}\) The velocity is adjusted such that the following equation holds:

Defaults: \(d_{1}=2, d_{2}=7, w^{end} = 0.4, c^{end}_{1} = 0.8 * c^{start}_{1}, c^{end}_{2} = c^{start}_{2}\)

\[w = (w^{start}-w^{end}-d_{1})exp(\frac{1}{1+ \frac{d_{2}.iter}{iter^{max}}})\]

Ref: Li, H.-R., & Gao, Y.-L. (2009). Particle Swarm Optimization Algorithm with Exponent Decreasing Inertia Weight and Stochastic Mutation. 2009 Second International Conference on Information and Computing Science. doi:10.1109/icic.2009.24

lin_variation(start_opts, opt, **kwargs)[source]

Linearly decreasing/increasing between \(w_{start}\) and \(w_{end}\)

Defaults: \(w^{end} = 0.4, c^{end}_{1} = 0.8 * c^{start}_{1}, c^{end}_{2} = c^{start}_{2}\)

\[w = w^{end}+(w^{start}-w^{end}) \frac{iter^{max}-iter}{iter^{max}}\]

Ref: Xin, Jianbin, Guimin Chen, and Yubao Hai. “A particle swarm optimizer with multi-stage linearly-decreasing inertia weight.” 2009 International joint conference on computational sciences and optimization. Vol. 1. IEEE, 2009.

nonlin_mod(start_opts, opt, **kwargs)[source]

Non linear decreasing/increasing with modulation index(n). The linear strategy can be made to converge faster without compromising on exploration with the use of this index which makes the equation non-linear.

Defaults: \(n=1.2\)

\[w = w^{end}+(w^{start}-w^{end}) \frac{(iter^{max}-iter)^{n}}{(iter^{max})^{n}}\]

Ref: A. Chatterjee, P. Siarry, Nonlinear inertia weight variation for dynamic adaption in particle swarm optimization, Computer and Operations Research 33 (2006) 859–871, March 2006

random(start_opts, opt, **kwargs)[source]

Random value between \(w^{start}\) and \(w^{end}\)

\[w = start + (end-start)*rand(0,1)\]

Ref: R.C. Eberhart, Y.H. Shi, Tracking and optimizing dynamic systems with particle swarms, in: Congress on Evolutionary Computation, Korea, 2001

class pyswarms.backend.handlers.VelocityHandler(strategy)[source]
adjust(velocity, clamp=None, **kwargs)[source]

Adjust the velocity to the new position

The velocity is adjusted such that the following equation holds:

\[\mathbf{v_{i,t}} = \mathbf{x_{i,t}} - \mathbf{x_{i,t-1}}\]

Note

This method should only be used in combination with a position handling operation.

invert(velocity, clamp=None, **kwargs)[source]

Invert the velocity if the particle is out of bounds

The velocity is inverted and shrinked. The shrinking is determined by the kwarg z. The default shrinking factor is 0.5. For all velocities whose particles are out of bounds the following equation is applied:

\[\mathbf{v_{i,t}} = -z\mathbf{v_{i,t}}\]
unmodified(velocity, clamp=None, **kwargs)[source]

Leaves the velocity unchanged

zero(velocity, clamp=None, **kwargs)[source]

Set velocity to zero if the particle is out of bounds

pyswarms.backend.operators module

Swarm Operation Backend

This module abstracts various operations in the swarm such as updating the personal best, finding neighbors, etc. You can use these methods to specify how the swarm will behave.

pyswarms.backend.operators.compute_objective_function(swarm, objective_func, pool=None, **kwargs)[source]

Evaluate particles using the objective function

This method evaluates each particle in the swarm according to the objective function passed.

If a pool is passed, then the evaluation of the particles is done in parallel using multiple processes.

Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • objective_func (function) – objective function to be evaluated
  • pool (multiprocessing.Pool) – multiprocessing.Pool to be used for parallel particle evaluation
  • kwargs (dict) – arguments for the objective function
Returns:

Cost-matrix for the given swarm

Return type:

numpy.ndarray

pyswarms.backend.operators.compute_pbest(swarm)[source]

Update the personal best score of a swarm instance

You can use this method to update your personal best positions.

import pyswarms.backend as P
from pyswarms.backend.swarms import Swarm

my_swarm = P.create_swarm(n_particles, dimensions)

# Inside the for-loop...
for i in range(iters):
    # It updates the swarm internally
    my_swarm.pbest_pos, my_swarm.pbest_cost = P.update_pbest(my_swarm)

It updates your current_pbest with the personal bests acquired by comparing the (1) cost of the current positions and the (2) personal bests your swarm has attained.

If the cost of the current position is less than the cost of the personal best, then the current position replaces the previous personal best position.

Parameters:swarm (pyswarms.backend.swarm.Swarm) – a Swarm instance
Returns:
  • numpy.ndarray – New personal best positions of shape (n_particles, n_dimensions)
  • numpy.ndarray – New personal best costs of shape (n_particles,)
pyswarms.backend.operators.compute_position(swarm, bounds, bh)[source]

Update the position matrix

This method updates the position matrix given the current position and the velocity. If bounded, the positions are handled by a BoundaryHandler instance

import pyswarms.backend as P
from pyswarms.swarms.backend import Swarm, VelocityHandler

my_swarm = P.create_swarm(n_particles, dimensions)
my_bh = BoundaryHandler(strategy="intermediate")

for i in range(iters):
    # Inside the for-loop
    my_swarm.position = compute_position(my_swarm, bounds, my_bh)
Parameters:
Returns:

New position-matrix

Return type:

numpy.ndarray

pyswarms.backend.operators.compute_velocity(swarm, clamp, vh, bounds=None)[source]

Update the velocity matrix

This method updates the velocity matrix using the best and current positions of the swarm. The velocity matrix is computed using the cognitive and social terms of the swarm. The velocity is handled by a VelocityHandler.

A sample usage can be seen with the following:

import pyswarms.backend as P
from pyswarms.swarms.backend import Swarm, VelocityHandler

my_swarm = P.create_swarm(n_particles, dimensions)
my_vh = VelocityHandler(strategy="invert")

for i in range(iters):
    # Inside the for-loop
    my_swarm.velocity = compute_velocity(my_swarm, clamp, my_vh, bounds)
Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • clamp (tuple of floats, optional) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.
  • vh (pyswarms.backend.handlers.VelocityHandler) – a VelocityHandler object with a specified handling strategy. For further information see pyswarms.backend.handlers.
  • bounds (tuple of numpy.ndarray or list, optional) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
Returns:

Updated velocity matrix

Return type:

numpy.ndarray

pyswarms.handlers package

This package implements different handling strategies for the optimiziation. The BoundaryHandler and the VelocityHandler handlers help avoiding that particles leave the defined search space. The OptionsHandler helps in varying the options with time/iterations.

pyswarms.handlers class

Handlers

This module provides Handler classes for the position, velocity and time varying acceleration coefficients of particles. Particles that do not stay inside these boundary conditions have to be handled by either adjusting their position after they left the bounded search space or adjusting their velocity when it would position them outside the search space. In particular, this approach is important if the optimium of a function is near the boundaries. For the following documentation let \(x_{i, t, d} \ \) be the \(d\) th coordinate of the particle \(i\) ‘s position vector at the time \(t\), \(lb\) the vector of the lower boundaries and \(ub\) the vector of the upper boundaries. The OptionsHandler class provide methods which allow faster and better convergence by varying the options \(w, c_{1}, c_{2}\) with various strategies.

The algorithms in the BoundaryHandler and VelocityHandler classes are adapted from [SH2010]

[SH2010] Sabine Helwig, “Particle Swarms for Constrained Optimization”, PhD thesis, Friedrich-Alexander Universität Erlangen-Nürnberg, 2010.

class pyswarms.backend.handlers.BoundaryHandler(strategy)[source]

Bases: pyswarms.backend.handlers.HandlerMixin

__call__(position, bounds, **kwargs)[source]

Apply the selected strategy to the position-matrix given the bounds

Parameters:
  • position (numpy.ndarray) – The swarm position to be handled
  • bounds (tuple of numpy.ndarray or list) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,)
  • kwargs (dict) –
Returns:

the adjusted positions of the swarm

Return type:

numpy.ndarray

__init__(strategy)[source]

A BoundaryHandler class

This class offers a way to handle boundary conditions. It contains methods to repair particle positions outside of the defined boundaries. Following strategies are available for the handling:

  • Nearest:
    Reposition the particle to the nearest bound.
  • Random:
    Reposition the particle randomly in between the bounds.
  • Shrink:
    Shrink the velocity of the particle such that it lands on the bounds.
  • Reflective:
    Mirror the particle position from outside the bounds to inside the bounds.
  • Intermediate:
    Reposition the particle to the midpoint between its current position on the bound surpassing axis and the bound itself. This only adjusts the axes that surpass the boundaries.

The BoundaryHandler can be called as a function to use the strategy that is passed at initialization to repair boundary issues. An example for the usage:

from pyswarms.backend import operators as op
from pyswarms.backend.handlers import BoundaryHandler

bh = BoundaryHandler(strategy="reflective")
ops.compute_position(swarm, bounds, handler=bh)

By passing the handler, the compute_position() function now has the ability to reset the particles by calling the BoundaryHandler inside.

strategy

The strategy to use. To see all available strategies, call BoundaryHandler.strategies

Type:str
intermediate(position, bounds, **kwargs)[source]

Set the particle to an intermediate position

This method resets particles that exceed the bounds to an intermediate position between the boundary and their earlier position. Namely, it changes the coordinate of the out-of-bounds axis to the middle value between the previous position and the boundary of the axis. The following equation describes this strategy:

\[\begin{split}x_{i, t, d} = \begin{cases} \frac{1}{2} \left (x_{i, t-1, d} + lb_d \right) & \quad \text{if }x_{i, t, d} < lb_d \\ \frac{1}{2} \left (x_{i, t-1, d} + ub_d \right) & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\end{split}\]
nearest(position, bounds, **kwargs)[source]

Set position to nearest bound

This method resets particles that exceed the bounds to the nearest available boundary. For every axis on which the coordiantes of the particle surpasses the boundary conditions the coordinate is set to the respective bound that it surpasses. The following equation describes this strategy:

\[\begin{split}x_{i, t, d} = \begin{cases} lb_d & \quad \text{if }x_{i, t, d} < lb_d \\ ub_d & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\end{split}\]
periodic(position, bounds, **kwargs)[source]

Sets the particles a periodic fashion

This method resets the particles that exeed the bounds by using the modulo function to cut down the position. This creates a virtual, periodic plane which is tiled with the search space. The following equation describtes this strategy:

\begin{gather*} x_{i, t, d} = \begin{cases} ub_d - (lb_d - x_{i, t, d}) \mod s_d & \quad \text{if }x_{i, t, d} < lb_d \\ lb_d + (x_{i, t, d} - ub_d) \mod s_d & \quad \text{if }x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases}\\ \\ \text{with}\\ \\ s_d = |ub_d - lb_d| \end{gather*}
random(position, bounds, **kwargs)[source]

Set position to random location

This method resets particles that exeed the bounds to a random position inside the boundary conditions.

reflective(position, bounds, **kwargs)[source]

Reflect the particle at the boundary

This method reflects the particles that exceed the bounds at the respective boundary. This means that the amount that the component which is orthogonal to the exceeds the boundary is mirrored at the boundary. The reflection is repeated until the position of the particle is within the boundaries. The following algorithm describes the behaviour of this strategy:

\begin{gather*} \text{while } x_{i, t, d} \not\in \left[lb_d,\,ub_d\right] \\ \text{ do the following:}\\ \\ x_{i, t, d} = \begin{cases} 2\cdot lb_d - x_{i, t, d} & \quad \text{if } x_{i, t, d} < lb_d \\ 2\cdot ub_d - x_{i, t, d} & \quad \text{if } x_{i, t, d} > ub_d \\ x_{i, t, d} & \quad \text{otherwise} \end{cases} \end{gather*}
shrink(position, bounds, **kwargs)[source]

Set the particle to the boundary

This method resets particles that exceed the bounds to the intersection of its previous velocity and the boundary. This can be imagined as shrinking the previous velocity until the particle is back in the valid search space. Let \(\sigma_{i, t, d}\) be the \(d\) th shrinking value of the \(i\) th particle at the time \(t\) and \(v_{i, t}\) the velocity of the \(i\) th particle at the time \(t\). Then the new position is computed by the following equation:

\begin{gather*} \mathbf{x}_{i, t} = \mathbf{x}_{i, t-1} + \sigma_{i, t} \mathbf{v}_{i, t} \\ \\ \text{with} \\ \\ \sigma_{i, t, d} = \begin{cases} \frac{lb_d-x_{i, t-1, d}}{v_{i, t, d}} & \quad \text{if } x_{i, t, d} < lb_d \\ \frac{ub_d-x_{i, t-1, d}}{v_{i, t, d}} & \quad \text{if } x_{i, t, d} > ub_d \\ 1 & \quad \text{otherwise} \end{cases} \\ \\ \text{and} \\ \\ \sigma_{i, t} = \min_{d=1...n} \sigma_{i, t, d} \\ \end{gather*}
class pyswarms.backend.handlers.HandlerMixin[source]

Bases: object

A HandlerMixing class

This class offers some basic functionality for the Handlers.

class pyswarms.backend.handlers.OptionsHandler(strategy)[source]

Bases: pyswarms.backend.handlers.HandlerMixin

__call__(start_opts, **kwargs)[source]

Call self as a function.

__init__(strategy)[source]

An OptionsHandler class

This class offers a way to handle options. It contains methods to vary the options at runtime. Following strategies are available for the handling:

  • exp_decay:
    Decreases the parameter exponentially between limits.
  • lin_variation:
    Decreases/increases the parameter linearly between limits.
  • random:
    takes a uniform random value between limits
  • nonlin_mod:
    Decreases/increases the parameter between limits according to a nonlinear modulation index .

The OptionsHandler can be called as a function to use the strategy that is passed at initialization to account for time-varying coefficients. An example for the usage:

from pyswarms.backend import operators as op
from pyswarms.backend.handlers import OptionsHandler


oh = OptionsHandler(strategy={ "w":"exp_decay", "c1":"nonlin_mod","c2":"lin_variation"})

for i in range(iters):
    # initial operations for global and local best positions
    new_options = oh(default_options, iternow=i, itermax=iters, end_opts={"c1":0.5, "c2":2.5, "w":0.4})
    # more updates using new_options

Note

As of pyswarms v1.3.0, you will need to create your own optimization loop to change the default ending options and other arguments for each strategy in all of the handlers on this page.

A more comprehensive tutorial is also present here for interested users.

strategy

The strategy to use. To see all available strategies, call OptionsHandler.strategies

Type:str
exp_decay(start_opts, opt, **kwargs)[source]

Exponentially decreasing between \(w_{start}\) and \(w_{end}\) The velocity is adjusted such that the following equation holds:

Defaults: \(d_{1}=2, d_{2}=7, w^{end} = 0.4, c^{end}_{1} = 0.8 * c^{start}_{1}, c^{end}_{2} = c^{start}_{2}\)

\[w = (w^{start}-w^{end}-d_{1})exp(\frac{1}{1+ \frac{d_{2}.iter}{iter^{max}}})\]

Ref: Li, H.-R., & Gao, Y.-L. (2009). Particle Swarm Optimization Algorithm with Exponent Decreasing Inertia Weight and Stochastic Mutation. 2009 Second International Conference on Information and Computing Science. doi:10.1109/icic.2009.24

lin_variation(start_opts, opt, **kwargs)[source]

Linearly decreasing/increasing between \(w_{start}\) and \(w_{end}\)

Defaults: \(w^{end} = 0.4, c^{end}_{1} = 0.8 * c^{start}_{1}, c^{end}_{2} = c^{start}_{2}\)

\[w = w^{end}+(w^{start}-w^{end}) \frac{iter^{max}-iter}{iter^{max}}\]

Ref: Xin, Jianbin, Guimin Chen, and Yubao Hai. “A particle swarm optimizer with multi-stage linearly-decreasing inertia weight.” 2009 International joint conference on computational sciences and optimization. Vol. 1. IEEE, 2009.

nonlin_mod(start_opts, opt, **kwargs)[source]

Non linear decreasing/increasing with modulation index(n). The linear strategy can be made to converge faster without compromising on exploration with the use of this index which makes the equation non-linear.

Defaults: \(n=1.2\)

\[w = w^{end}+(w^{start}-w^{end}) \frac{(iter^{max}-iter)^{n}}{(iter^{max})^{n}}\]

Ref: A. Chatterjee, P. Siarry, Nonlinear inertia weight variation for dynamic adaption in particle swarm optimization, Computer and Operations Research 33 (2006) 859–871, March 2006

random(start_opts, opt, **kwargs)[source]

Random value between \(w^{start}\) and \(w^{end}\)

\[w = start + (end-start)*rand(0,1)\]

Ref: R.C. Eberhart, Y.H. Shi, Tracking and optimizing dynamic systems with particle swarms, in: Congress on Evolutionary Computation, Korea, 2001

class pyswarms.backend.handlers.VelocityHandler(strategy)[source]

Bases: pyswarms.backend.handlers.HandlerMixin

__call__(velocity, clamp, **kwargs)[source]

Apply the selected strategy to the velocity-matrix given the bounds

Parameters:
  • velocity (numpy.ndarray) – The swarm position to be handled
  • clamp (tuple of numpy.ndarray or list) – a tuple of size 2 where the first entry is the minimum clamp while the second entry is the maximum clamp. Each array must be of shape (dimensions,)
  • kwargs (dict) –
Returns:

the adjusted positions of the swarm

Return type:

numpy.ndarray

__init__(strategy)[source]

A VelocityHandler class

This class offers a way to handle velocities. It contains methods to repair the velocities of particles that exceeded the defined boundaries. Following strategies are available for the handling:

  • Unmodified:
    Returns the unmodified velocites.
  • Adjust
    Returns the velocity that is adjusted to be the distance between the current and the previous position.
  • Invert
    Inverts and shrinks the velocity by the factor -z.
  • Zero
    Sets the velocity of out-of-bounds particles to zero.
adjust(velocity, clamp=None, **kwargs)[source]

Adjust the velocity to the new position

The velocity is adjusted such that the following equation holds:

\[\mathbf{v_{i,t}} = \mathbf{x_{i,t}} - \mathbf{x_{i,t-1}}\]

Note

This method should only be used in combination with a position handling operation.

invert(velocity, clamp=None, **kwargs)[source]

Invert the velocity if the particle is out of bounds

The velocity is inverted and shrinked. The shrinking is determined by the kwarg z. The default shrinking factor is 0.5. For all velocities whose particles are out of bounds the following equation is applied:

\[\mathbf{v_{i,t}} = -z\mathbf{v_{i,t}}\]
unmodified(velocity, clamp=None, **kwargs)[source]

Leaves the velocity unchanged

zero(velocity, clamp=None, **kwargs)[source]

Set velocity to zero if the particle is out of bounds

pyswarms.topology package

This package implements various swarm topologies that may be useful as you build your own swarm implementations. Each topology can perform the following:

  • Determine the best particle on a given swarm.
  • Compute the next position given a current swarm position.
  • Compute the velocities given a swarm configuration.
pyswarms.backend.topology.base module

Base class for Topologies

You can use this class to create your own topology. Note that every Topology should implement a way to compute the (1) best particle, the (2) next position, and the (3) next velocity given the Swarm’s attributes at a given timestep. Not implementing these methods will raise an error.

In addition, this class must interface with any class found in the pyswarms.backend.swarms.Swarm module.

class pyswarms.backend.topology.base.Topology(static, **kwargs)[source]

Bases: abc.ABC

__init__(static, **kwargs)[source]

Initializes the class

compute_gbest(swarm)[source]

Compute the best particle of the swarm and return the cost and position

compute_position(swarm)[source]

Update the swarm’s position-matrix

compute_velocity(swarm)[source]

Update the swarm’s velocity-matrix

pyswarms.backend.topology.star module

A Star Network Topology

This class implements a star topology. In this topology, all particles are connected to one another. This social behavior is often found in GlobalBest PSO optimizers.

class pyswarms.backend.topology.star.Star(static=None, **kwargs)[source]

Bases: pyswarms.backend.topology.base.Topology

__init__(static=None, **kwargs)[source]

Initializes the class

compute_gbest(swarm, **kwargs)[source]

Update the global best using a star topology

This method takes the current pbest_pos and pbest_cost, then returns the minimum cost and position from the matrix.

import pyswarms.backend as P
from pyswarms.backend.swarms import Swarm
from pyswarm.backend.topology import Star

my_swarm = P.create_swarm(n_particles, dimensions)
my_topology = Star()

# Update best_cost and position
swarm.best_pos, swarm.best_cost = my_topology.compute_gbest(my_swarm)
Parameters:swarm (pyswarms.backend.swarm.Swarm) – a Swarm instance
Returns:
  • numpy.ndarray – Best position of shape (n_dimensions, )
  • float – Best cost
compute_position(swarm, bounds=None, bh=<pyswarms.backend.handlers.BoundaryHandler object>)[source]

Update the position matrix

This method updates the position matrix given the current position and the velocity. If bounded, it waives updating the position.

Parameters:
Returns:

New position-matrix

Return type:

numpy.ndarray

compute_velocity(swarm, clamp=None, vh=<pyswarms.backend.handlers.VelocityHandler object>, bounds=None)[source]

Compute the velocity matrix

This method updates the velocity matrix using the best and current positions of the swarm. The velocity matrix is computed using the cognitive and social terms of the swarm.

A sample usage can be seen with the following:

import pyswarms.backend as P
from pyswarms.backend.swarm import Swarm
from pyswarms.backend.handlers import VelocityHandler
from pyswarms.backend.topology import Star

my_swarm = P.create_swarm(n_particles, dimensions)
my_topology = Star()
my_vh = VelocityHandler(strategy="adjust")

for i in range(iters):
    # Inside the for-loop
    my_swarm.velocity = my_topology.update_velocity(my_swarm, clamp, my_vh,
    bounds)
Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • clamp (tuple of floats (default is None)) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.
  • vh (pyswarms.backend.handlers.VelocityHandler) – a VelocityHandler instance
  • bounds (tuple of np.ndarray or list (default is None)) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
Returns:

Updated velocity matrix

Return type:

numpy.ndarray

pyswarms.backend.topology.ring module

A Ring Network Topology

This class implements a ring topology. In this topology, the particles are connected with their k nearest neighbors. This social behavior is often found in LocalBest PSO optimizers.

class pyswarms.backend.topology.ring.Ring(static=False)[source]

Bases: pyswarms.backend.topology.base.Topology

__init__(static=False)[source]

Initializes the class

Parameters:static (bool (Default is False)) – a boolean that decides whether the topology is static or dynamic
compute_gbest(swarm, p, k, **kwargs)[source]

Update the global best using a ring-like neighborhood approach

This uses the cKDTree method from scipy to obtain the nearest neighbors.

Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • p (int {1,2}) – the Minkowski p-norm to use. 1 is the sum-of-absolute values (or L1 distance) while 2 is the Euclidean (or L2) distance.
  • k (int) – number of neighbors to be considered. Must be a positive integer less than n_particles
Returns:

  • numpy.ndarray – Best position of shape (n_dimensions, )
  • float – Best cost

compute_position(swarm, bounds=None, bh=<pyswarms.backend.handlers.BoundaryHandler object>)[source]

Update the position matrix

This method updates the position matrix given the current position and the velocity. If bounded, it waives updating the position.

Parameters:
Returns:

New position-matrix

Return type:

numpy.ndarray

compute_velocity(swarm, clamp=None, vh=<pyswarms.backend.handlers.VelocityHandler object>, bounds=None)[source]

Compute the velocity matrix

This method updates the velocity matrix using the best and current positions of the swarm. The velocity matrix is computed using the cognitive and social terms of the swarm.

A sample usage can be seen with the following:

import pyswarms.backend as P
from pyswarms.backend.swarm import Swarm
from pyswarms.backend.handlers import VelocityHandler
from pyswarms.backend.topology import Ring

my_swarm = P.create_swarm(n_particles, dimensions)
my_topology = Ring(static=False)
my_vh = VelocityHandler(strategy="invert")

for i in range(iters):
    # Inside the for-loop
    my_swarm.velocity = my_topology.update_velocity(my_swarm, clamp, my_vh,
    bounds)
Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • clamp (tuple of floats (default is None)) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.
  • vh (pyswarms.backend.handlers.VelocityHandler) – a VelocityHandler instance
  • bounds (tuple of np.ndarray or list (default is None)) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
Returns:

Updated velocity matrix

Return type:

numpy.ndarray

pyswarms.backend.topology.von_neumann module

A Von Neumann Network Topology

This class implements a Von Neumann topology.

class pyswarms.backend.topology.von_neumann.VonNeumann(static=None)[source]

Bases: pyswarms.backend.topology.ring.Ring

__init__(static=None)[source]

Initializes the class

Parameters:static (bool (Default is False)) – a boolean that decides whether the topology is static or dynamic
compute_gbest(swarm, p, r, **kwargs)[source]

Updates the global best using a neighborhood approach

The Von Neumann topology inherits from the Ring topology and uses the same approach to calculate the global best. The number of neighbors is determined by the dimension and the range. This topology is always a static topology.

Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • r (int) – range of the Von Neumann topology
  • p (int {1,2}) – the Minkowski p-norm to use. 1 is the sum-of-absolute values (or L1 distance) while 2 is the Euclidean (or L2) distance.
Returns:

  • numpy.ndarray – Best position of shape (n_dimensions, )
  • float – Best cost

static delannoy(d, r)[source]

Static helper method to compute Delannoy numbers

This method computes the number of neighbours of a Von Neumann topology, i.e. a Delannoy number, dependent on the range and the dimension of the search space. The Delannoy numbers are computed recursively.

Parameters:
  • d (int) – dimension of the search space
  • r (int) – range of the Von Neumann topology
Returns:

Delannoy number

Return type:

int

pyswarms.backend.topology.pyramid module

A Pyramid Network Topology

This class implements a pyramid topology. In this topology, the particles are connected by N-dimensional simplices.

class pyswarms.backend.topology.pyramid.Pyramid(static=False)[source]

Bases: pyswarms.backend.topology.base.Topology

__init__(static=False)[source]

Initialize the class

Parameters:static (bool (Default is False)) – a boolean that decides whether the topology is static or dynamic
compute_gbest(swarm, **kwargs)[source]

Update the global best using a pyramid neighborhood approach

This topology uses the Delaunay class from scipy. To prevent precision errors in the Delaunay class, custom qhull_options were added. Namely, QJ0.001 Qbb Qc Qx. The meaning of those options is explained in [qhull]. This method is used to triangulate N-dimensional space into simplices. The vertices of the simplicies consist of swarm particles. This method is adapted from the work of Lane et al.[SIS2008]

[SIS2008] J. Lane, A. Engelbrecht and J. Gain, “Particle swarm optimization with spatially meaningful neighbours,” 2008 IEEE Swarm Intelligence Symposium, St. Louis, MO, 2008, pp. 1-8. doi: 10.1109/SIS.2008.4668281 [qhull] http://www.qhull.org/html/qh-optq.htm

Parameters:swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
Returns:
  • numpy.ndarray – Best position of shape (n_dimensions, )
  • float – Best cost
compute_position(swarm, bounds=None, bh=<pyswarms.backend.handlers.BoundaryHandler object>)[source]

Update the position matrix

This method updates the position matrix given the current position and the velocity. If bounded, it waives updating the position.

Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • bounds (tuple of np.ndarray or list (default is None)) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
  • bh (a BoundaryHandler instance) –
Returns:

New position-matrix

Return type:

numpy.ndarray

compute_velocity(swarm, clamp=None, vh=<pyswarms.backend.handlers.VelocityHandler object>, bounds=None)[source]

Compute the velocity matrix

This method updates the velocity matrix using the best and current positions of the swarm. The velocity matrix is computed using the cognitive and social terms of the swarm.

A sample usage can be seen with the following:

import pyswarms.backend as P
from pyswarms.backend.swarm import Swarm
from pyswarms.backend.handlers import VelocityHandler
from pyswarms.backend.topology import Pyramid

my_swarm = P.create_swarm(n_particles, dimensions)
my_topology = Pyramid(static=False)
my_vh = VelocityHandler(strategy="zero")

for i in range(iters):
    # Inside the for-loop
    my_swarm.velocity = my_topology.update_velocity(my_swarm, clamp, my_vh,
    bounds=bounds)
Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • clamp (tuple of floats (default is None)) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.
  • vh (pyswarms.backend.handlers.VelocityHandler) – a VelocityHandler instance
  • bounds (tuple of np.ndarray or list (default is None)) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
Returns:

Updated velocity matrix

Return type:

numpy.ndarray

pyswarms.backend.topology.random module

A Random Network Topology

This class implements a random topology. All particles are connected in a random fashion.

class pyswarms.backend.topology.random.Random(static=False)[source]

Bases: pyswarms.backend.topology.base.Topology

__init__(static=False)[source]

Initializes the class

Parameters:static (bool) – a boolean that decides whether the topology is static or dynamic. Defaulg is False
compute_gbest(swarm, k, **kwargs)[source]

Update the global best using a random neighborhood approach

This uses random class from numpy to give every particle k randomly distributed, non-equal neighbors. The resulting topology is a connected graph. The algorithm to obtain the neighbors was adapted from [TSWJ2013].

[TSWJ2013] Qingjian Ni and Jianming Deng, “A New Logistic Dynamic Particle Swarm Optimization Algorithm Based on Random Topology,” The Scientific World Journal, vol. 2013, Article ID 409167, 8 pages, 2013. https://doi.org/10.1155/2013/409167.

Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • k (int) – number of neighbors to be considered. Must be a positive integer less than n_particles-1
Returns:

  • numpy.ndarray – Best position of shape (n_dimensions, )
  • float – Best cost

compute_position(swarm, bounds=None, bh=<pyswarms.backend.handlers.BoundaryHandler object>)[source]

Update the position matrix

This method updates the position matrix given the current position and the velocity. If bounded, it waives updating the position.

Parameters:
Returns:

New position-matrix

Return type:

numpy.ndarray

compute_velocity(swarm, clamp=None, vh=<pyswarms.backend.handlers.VelocityHandler object>, bounds=None)[source]

Compute the velocity matrix

This method updates the velocity matrix using the best and current positions of the swarm. The velocity matrix is computed using the cognitive and social terms of the swarm.

A sample usage can be seen with the following:

import pyswarms.backend as P
from pyswarms.backend.swarm import Swarm
from pyswarms.backend.handlers import VelocityHandler
from pyswarms.backend.topology import Random

my_swarm = P.create_swarm(n_particles, dimensions)
my_topology = Random(static=False)
my_vh = VelocityHandler(strategy="zero")

for i in range(iters):
    # Inside the for-loop
    my_swarm.velocity = my_topology.update_velocity(my_swarm, clamp, my_vh,
    bounds)
Parameters:
  • swarm (pyswarms.backend.swarms.Swarm) – a Swarm instance
  • clamp (tuple of floats) – a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping. Default is None
  • vh (pyswarms.backend.handlers.VelocityHandler) – a VelocityHandler instance
  • bounds (tuple of numpy.ndarray or list) – a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).
Returns:

Updated velocity matrix

Return type:

numpy.ndarray

pyswarms.swarms package

This package contains the Swarm class for creating your own swarm implementation. The class acts as a DataClass, holding information on the particles you have generated throughout each timestep. It offers a pre-built and flexible way of building your own swarm.

pyswarms.swarms class
class pyswarms.backend.swarms.Swarm(position: numpy.ndarray, velocity: numpy.ndarray, n_particles: int = NOTHING, dimensions: int = NOTHING, options: dict = {}, pbest_pos: numpy.ndarray = NOTHING, best_pos: numpy.ndarray = array([], dtype=float64), pbest_cost: numpy.ndarray = array([], dtype=float64), best_cost: float = inf, current_cost: numpy.ndarray = array([], dtype=float64))[source]

A Swarm Class

This class offers a generic swarm that can be used in most use-cases such as single-objective optimization, etc. It contains various attributes that are commonly-used in most swarm implementations.

To initialize this class, simply supply values for the position and velocity matrix. The other attributes are automatically filled. If you want to initialize random values, take a look at:

If your swarm requires additional parameters (say c1, c2, and w in gbest PSO), simply pass them to the options dictionary.

As an example, say we want to create a swarm by generating particles randomly. We can use the helper methods above to do our job:

import pyswarms.backend as P
from pyswarms.backend.swarms import Swarm

# Let's generate a 10-particle swarm with 10 dimensions
init_positions = P.generate_swarm(n_particles=10, dimensions=10)
init_velocities = P.generate_velocity(n_particles=10, dimensions=10)
# Say, particle behavior is governed by parameters `foo` and `bar`
my_options = {'foo': 0.4, 'bar': 0.6}
# Initialize the swarm
my_swarm = Swarm(position=init_positions, velocity=init_velocities, options=my_options)

From there, you can now use all the methods in pyswarms.backend. Of course, the process above has been abstracted by the method pyswarms.backend.generators.create_swarm() so you don’t have to write the whole thing down.

position

position-matrix at a given timestep of shape (n_particles, dimensions)

Type:numpy.ndarray
velocity

velocity-matrix at a given timestep of shape (n_particles, dimensions)

Type:numpy.ndarray
n_particles

number of particles in a swarm.

Type:int
dimensions

number of dimensions in a swarm.

Type:int
options

various options that govern a swarm’s behavior.

Type:dict
pbest_pos

personal best positions of each particle of shape (n_particles, dimensions) Default is None

Type:numpy.ndarray
best_pos

best position found by the swarm of shape (dimensions, ) for the pyswarms.backend.topology.Star topology and (dimensions, particles) for the other topologies

Type:numpy.ndarray
pbest_cost

personal best costs of each particle of shape (n_particles, )

Type:numpy.ndarray
best_cost

best cost found by the swarm, default is numpy.inf

Type:float
current_cost

the current cost found by the swarm of shape (n_particles, dimensions)

Type:numpy.ndarray

Base Classes

The base classes are inherited by various PSO implementations throughout the library. It supports a simple skeleton to construct a customized PSO algorithm.

pyswarms.base package

The pyswarms.base module implements base swarm classes to implement variants of particle swarm optimization.

pyswarms.base module

Base class for single-objective Particle Swarm Optimization implementations.

All methods here are abstract and raise a NotImplementedError when not used. When defining your own swarm implementation, create another class,

>>> class MySwarm(SwarmBase):
>>>     def __init__(self):
>>>        super(MySwarm, self).__init__()

and define all the necessary methods needed.

As a guide, check the global best and local best implementations in this package.

Note

Regarding options, it is highly recommended to include parameters used in position and velocity updates as keyword arguments. For parameters that affect the topology of the swarm, it may be much better to have them as positional arguments.

See also

pyswarms.single.global_best
global-best PSO implementation
pyswarms.single.local_best
local-best PSO implementation
pyswarms.single.general_optimizer
a more general PSO implementation with a custom topology
class pyswarms.base.base_single.SwarmOptimizer(n_particles, dimensions, options, bounds=None, velocity_clamp=None, center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Bases: abc.ABC

__init__(n_particles, dimensions, options, bounds=None, velocity_clamp=None, center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Initialize the swarm

Creates a Swarm class depending on the values initialized

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
options

a dictionary containing the parameters for the specific optimization technique

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter
Type:dict with keys {'c1', 'c2', 'w'}
bounds

a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).

Type:tuple of numpy.ndarray, optional
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple, optional
center

an array of size dimensions

Type:list, optional
ftol

relative error in objective_func(best_pos) acceptable for convergence. Default is -np.inf.

Type:float, optional
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
_abc_impl = <_abc_data object>
_populate_history(hist)[source]

Populate all history lists

The cost_history, mean_pbest_history, and neighborhood_best is expected to have a shape of (iters,),on the other hand, the pos_history and velocity_history are expected to have a shape of (iters, n_particles, dimensions)

Parameters:hist (collections.namedtuple) – Must be of the same type as self.ToHistory
optimize(objective_func, iters, n_processes=None, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function objective_func for a number of iterations iter.

Parameters:
  • objective_func (function) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int) – number of processes to use for parallel particle evaluation Default is None with no parallelization
  • kwargs (dict) – arguments for objective function
Raises:

NotImplementedError – When this method is not implemented.

reset()[source]

Reset the attributes of the optimizer

All variables/atributes that will be re-initialized when this method is defined here. Note that this method can be called twice: (1) during initialization, and (2) when this is called from an instance.

It is good practice to keep the number of resettable attributes at a minimum. This is to prevent spamming the same object instance with various swarm definitions.

Normally, swarm definitions are as atomic as possible, where each type of swarm is contained in its own instance. Thus, the following attributes are the only ones recommended to be resettable:

  • Swarm position matrix (self.pos)
  • Velocity matrix (self.pos)
  • Best scores and positions (gbest_cost, gbest_pos, etc.)

Otherwise, consider using positional arguments.

Base class for single-objective discrete Particle Swarm Optimization implementations.

All methods here are abstract and raises a NotImplementedError when not used. When defining your own swarm implementation, create another class,

>>> class MySwarm(DiscreteSwarmOptimizer):
>>>     def __init__(self):
>>>        super(MySwarm, self).__init__()

and define all the necessary methods needed.

As a guide, check the discrete PSO implementations in this package.

Note

Regarding options, it is highly recommended to include parameters used in position and velocity updates as keyword arguments. For parameters that affect the topology of the swarm, it may be much better to have them as positional arguments.

See also

pyswarms.discrete.binary
binary PSO implementation
class pyswarms.base.base_discrete.DiscreteSwarmOptimizer(n_particles, dimensions, binary, options, velocity_clamp=None, init_pos=None, ftol=-inf, ftol_iter=1)[source]

Bases: abc.ABC

__init__(n_particles, dimensions, binary, options, velocity_clamp=None, init_pos=None, ftol=-inf, ftol_iter=1)[source]

Initialize the swarm.

Creates a numpy.ndarray of positions depending on the number of particles needed and the number of dimensions. The initial positions of the particles depends on the argument binary, which governs if a binary matrix will be produced.

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
binary

a trigger to generate a binary matrix for the swarm’s initial positions. When passed with a False value, random integers from 0 to dimensions are generated.

Type:boolean
options

a dictionary containing the parameters for the specific optimization technique

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter
Type:dict with keys {'c1', 'c2', 'w'}
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple, optional
ftol

relative error in objective_func(best_pos) acceptable for convergence. Default is -np.inf.

Type:float, optional
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
options

a dictionary containing the parameters for a specific optimization technique

Type:dict
_abc_impl = <_abc_data object>
_populate_history(hist)[source]

Populate all history lists

The cost_history, mean_pbest_history, and neighborhood_best is expected to have a shape of (iters,),on the other hand, the pos_history and velocity_history are expected to have a shape of (iters, n_particles, dimensions)

Parameters:hist (collections.namedtuple) – Must be of the same type as self.ToHistory
optimize(objective_func, iters, n_processes=None, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function objective_func for a number of iterations iter.

Parameters:
  • objective_func (callable) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int) – number of processes to use for parallel particle evaluation Default is None with no parallelization
  • kwargs (dict) – arguments for objective function
Raises:

NotImplementedError – When this method is not implemented.

reset()[source]

Reset the attributes of the optimizer

All variables/atributes that will be re-initialized when this method is defined here. Note that this method can be called twice: (1) during initialization, and (2) when this is called from an instance.

It is good practice to keep the number of resettable attributes at a minimum. This is to prevent spamming the same object instance with various swarm definitions.

Normally, swarm definitions are as atomic as possible, where each type of swarm is contained in its own instance. Thus, the following attributes are the only ones recommended to be resettable:

  • Swarm position matrix (self.pos)
  • Velocity matrix (self.pos)
  • Best scores and positions (gbest_cost, gbest_pos, etc.)

Otherwise, consider using positional arguments.

Optimizers

Off-the-shelf implementations of standard algorithms. Includes classics such as global-best and local-best. Useful for quick-and-easy optimization problems.

pyswarms.single package

The pyswarms.single module implements various techniques in continuous single-objective optimization. These require only one objective function that can be optimized in a continuous space.

Note

PSO algorithms scale with the search space. This means that, by using larger boundaries, the final results are getting larger as well.

Note

Please keep in mind that Python has a biggest float number. So using large boundaries in combination with exponentiation or multiplication can lead to an OverflowError.

pyswarms.single.global_best module

A Global-best Particle Swarm Optimization (gbest PSO) algorithm.

It takes a set of candidate solutions, and tries to find the best solution using a position-velocity update method. Uses a star-topology where each particle is attracted to the best performing particle.

The position update can be defined as:

\[x_{i}(t+1) = x_{i}(t) + v_{i}(t+1)\]

Where the position at the current timestep \(t\) is updated using the computed velocity at \(t+1\). Furthermore, the velocity update is defined as:

\[v_{ij}(t + 1) = w * v_{ij}(t) + c_{1}r_{1j}(t)[y_{ij}(t) − x_{ij}(t)] + c_{2}r_{2j}(t)[\hat{y}_{j}(t) − x_{ij}(t)]\]

Here, \(c1\) and \(c2\) are the cognitive and social parameters respectively. They control the particle’s behavior given two choices: (1) to follow its personal best or (2) follow the swarm’s global best position. Overall, this dictates if the swarm is explorative or exploitative in nature. In addition, a parameter \(w\) controls the inertia of the swarm’s movement.

An example usage is as follows:

import pyswarms as ps
from pyswarms.utils.functions import single_obj as fx

# Set-up hyperparameters
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9}

# Call instance of GlobalBestPSO
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2,
                                    options=options)

# Perform optimization
stats = optimizer.optimize(fx.sphere, iters=100)

This algorithm was adapted from the earlier works of J. Kennedy and R.C. Eberhart in Particle Swarm Optimization [IJCNN1995].

[IJCNN1995]J. Kennedy and R.C. Eberhart, “Particle Swarm Optimization,” Proceedings of the IEEE International Joint Conference on Neural Networks, 1995, pp. 1942-1948.
class pyswarms.single.global_best.GlobalBestPSO(n_particles, dimensions, options, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Bases: pyswarms.base.base_single.SwarmOptimizer

__init__(n_particles, dimensions, options, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Initialize the swarm

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
options

a dictionary containing the parameters for the specific optimization technique.

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter
Type:dict with keys {'c1', 'c2', 'w'}
bounds

a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).

Type:tuple of numpy.ndarray, optional
oh_strategy

a dict of update strategies for each option.

Type:dict, optional, default=None(constant options)
bh_strategy

a strategy for the handling of out-of-bounds particles.

Type:str
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple, optional
vh_strategy

a strategy for the handling of the velocity of out-of-bounds particles.

Type:str
center

an array of size dimensions

Type:list (default is None)
ftol

relative error in objective_func(best_pos) acceptable for convergence. Default is -np.inf

Type:float
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
init_pos

option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly.

Type:numpy.ndarray, optional
optimize(objective_func, iters, n_processes=None, verbose=True, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function f for a number of iterations iter.

Parameters:
  • objective_func (callable) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int) – number of processes to use for parallel particle evaluation (default: None = no parallelization)
  • verbose (bool) – enable or disable the logs and progress bar (default: True = enable logs)
  • kwargs (dict) – arguments for the objective function
Returns:

the global best cost and the global best position.

Return type:

tuple

pyswarms.single.local_best module

A Local-best Particle Swarm Optimization (lbest PSO) algorithm.

Similar to global-best PSO, it takes a set of candidate solutions, and finds the best solution using a position-velocity update method. However, it uses a ring topology, thus making the particles attracted to its corresponding neighborhood.

The position update can be defined as:

\[x_{i}(t+1) = x_{i}(t) + v_{i}(t+1)\]

Where the position at the current timestep \(t\) is updated using the computed velocity at \(t+1\). Furthermore, the velocity update is defined as:

\[v_{ij}(t + 1) = m * v_{ij}(t) + c_{1}r_{1j}(t)[y_{ij}(t) − x_{ij}(t)] + c_{2}r_{2j}(t)[\hat{y}_{j}(t) − x_{ij}(t)]\]

However, in local-best PSO, a particle doesn’t compare itself to the overall performance of the swarm. Instead, it looks at the performance of its nearest-neighbours, and compares itself with them. In general, this kind of topology takes much more time to converge, but has a more powerful explorative feature.

In this implementation, a neighbor is selected via a k-D tree imported from scipy. Distance are computed with either the L1 or L2 distance. The nearest-neighbours are then queried from this k-D tree. They are computed for every iteration.

An example usage is as follows:

import pyswarms as ps
from pyswarms.utils.functions import single_obj as fx

# Set-up hyperparameters
options = {'c1': 0.5, 'c2': 0.3, 'w': 0.9, 'k': 3, 'p': 2}

# Call instance of LBestPSO with a neighbour-size of 3 determined by
# the L2 (p=2) distance.
optimizer = ps.single.LocalBestPSO(n_particles=10, dimensions=2,
                                   options=options)

# Perform optimization
stats = optimizer.optimize(fx.sphere, iters=100)

This algorithm was adapted from one of the earlier works of J. Kennedy and R.C. Eberhart in Particle Swarm Optimization [IJCNN1995] [MHS1995]

[IJCNN1995]J. Kennedy and R.C. Eberhart, “Particle Swarm Optimization,” Proceedings of the IEEE International Joint Conference on Neural Networks, 1995, pp. 1942-1948.
[MHS1995]J. Kennedy and R.C. Eberhart, “A New Optimizer using Particle Swarm Theory,” in Proceedings of the Sixth International Symposium on Micromachine and Human Science, 1995, pp. 39–43.
class pyswarms.single.local_best.LocalBestPSO(n_particles, dimensions, options, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None, static=False)[source]

Bases: pyswarms.base.base_single.SwarmOptimizer

__init__(n_particles, dimensions, options, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None, static=False)[source]

Initialize the swarm

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
bounds

a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).

Type:tuple of numpy.ndarray
oh_strategy

a dict of update strategies for each option.

Type:dict, optional, default=None(constant options)
bh_strategy

a strategy for the handling of out-of-bounds particles.

Type:str
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple (default is (0,1))
vh_strategy

a strategy for the handling of the velocity of out-of-bounds particles.

Type:str
center

an array of size dimensions

Type:list, optional
ftol

relative error in objective_func(best_pos) acceptable for convergence. Default is -np.inf

Type:float
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
options

a dictionary containing the parameters for the specific optimization technique

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter
  • k : int
    number of neighbors to be considered. Must be a positive integer less than n_particles
  • p: int {1,2}
    the Minkowski p-norm to use. 1 is the sum-of-absolute values (or L1 distance) while 2 is the Euclidean (or L2) distance.
Type:dict with keys {'c1', 'c2', 'w', 'k', 'p'}
init_pos

option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly.

Type:numpy.ndarray, optional
static

a boolean that decides whether the Ring topology used is static or dynamic. Default is False

Type:bool
_abc_impl = <_abc_data object>
optimize(objective_func, iters, n_processes=None, verbose=True, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function f for a number of iterations iter.

Parameters:
  • objective_func (callable) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int) – number of processes to use for parallel particle evaluation (default: None = no parallelization)
  • verbose (bool) – enable or disable the logs and progress bar (default: True = enable logs)
  • kwargs (dict) – arguments for the objective function
Returns:

the local best cost and the local best position among the swarm.

Return type:

tuple

pyswarms.single.general_optimizer module

A general Particle Swarm Optimization (general PSO) algorithm.

It takes a set of candidate solutions, and tries to find the best solution using a position-velocity update method. Uses a user specified topology.

The position update can be defined as:

\[x_{i}(t+1) = x_{i}(t) + v_{i}(t+1)\]

Where the position at the current timestep \(t\) is updated using the computed velocity at \(t+1\). Furthermore, the velocity update is defined as:

\[v_{ij}(t + 1) = m * v_{ij}(t) + c_{1}r_{1j}(t)[y_{ij}(t) − x_{ij}(t)] + c_{2}r_{2j}(t)[\hat{y}_{j}(t) − x_{ij}(t)]\]

Here, \(c1\) and \(c2\) are the cognitive and social parameters respectively. They control the particle’s behavior given two choices: (1) to follow its personal best or (2) follow the swarm’s global best position. Overall, this dictates if the swarm is explorative or exploitative in nature. In addition, a parameter \(w\) controls the inertia of the swarm’s movement.

An example usage is as follows:

import pyswarms as ps
from pyswarms.backend.topology import Pyramid
from pyswarms.utils.functions import single_obj as fx

# Set-up hyperparameters and topology
options = {'c1': 0.5, 'c2': 0.3, 'w':0.9}
my_topology = Pyramid(static=False)

# Call instance of GlobalBestPSO
optimizer = ps.single.GeneralOptimizerPSO(n_particles=10, dimensions=2,
                                    options=options, topology=my_topology)

# Perform optimization
stats = optimizer.optimize(fx.sphere, iters=100)

This algorithm was adapted from the earlier works of J. Kennedy and R.C. Eberhart in Particle Swarm Optimization [IJCNN1995].

[IJCNN1995]J. Kennedy and R.C. Eberhart, “Particle Swarm Optimization,” Proceedings of the IEEE International Joint Conference on Neural Networks, 1995, pp. 1942-1948.
class pyswarms.single.general_optimizer.GeneralOptimizerPSO(n_particles, dimensions, options, topology, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Bases: pyswarms.base.base_single.SwarmOptimizer

__init__(n_particles, dimensions, options, topology, bounds=None, oh_strategy=None, bh_strategy='periodic', velocity_clamp=None, vh_strategy='unmodified', center=1.0, ftol=-inf, ftol_iter=1, init_pos=None)[source]

Initialize the swarm

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
options
‘c2’, ‘w’, ‘k’, ‘p’}`

a dictionary containing the parameters for the specific optimization technique.

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter

if used with the Ring, VonNeumann or Random topology the additional parameter k must be included * k : int

number of neighbors to be considered. Must be a positive integer less than n_particles

if used with the Ring topology the additional parameters k and p must be included * p: int {1,2}

the Minkowski p-norm to use. 1 is the sum-of-absolute values (or L1 distance) while 2 is the Euclidean (or L2) distance.

if used with the VonNeumann topology the additional parameters p and r must be included * r: int

the range of the VonNeumann topology. This is used to determine the number of neighbours in the topology.
Type:dict with keys {'c1', 'c2', 'w'} or :code:`{‘c1’,
topology

a Topology object that defines the topology to use in the optimization process. The currently available topologies are:

  • Star
    All particles are connected
  • Ring (static and dynamic)
    Particles are connected to the k nearest neighbours
  • VonNeumann
    Particles are connected in a VonNeumann topology
  • Pyramid (static and dynamic)
    Particles are connected in N-dimensional simplices
  • Random (static and dynamic)
    Particles are connected to k random particles

Static variants of the topologies remain with the same neighbours over the course of the optimization. Dynamic variants calculate new neighbours every time step.

Type:pyswarms.backend.topology.Topology
bounds

a tuple of size 2 where the first entry is the minimum bound while the second entry is the maximum bound. Each array must be of shape (dimensions,).

Type:tuple of numpy.ndarray, optional
oh_strategy

a dict of update strategies for each option.

Type:dict, optional, default=None(constant options)
bh_strategy

a strategy for the handling of out-of-bounds particles.

Type:str
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple, optional
vh_strategy

a strategy for the handling of the velocity of out-of-bounds particles.

Type:str
center

an array of size dimensions

Type:list (default is None)
ftol

relative error in objective_func(best_pos) acceptable for convergence. Default is -np.inf

Type:float
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
init_pos

option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly.

Type:numpy.ndarray, optional
_abc_impl = <_abc_data object>
optimize(objective_func, iters, n_processes=None, verbose=True, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function f for a number of iterations iter.

Parameters:
  • objective_func (callable) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int) – number of processes to use for parallel particle evaluation (default: None = no parallelization)
  • verbose (bool) – enable or disable the logs and progress bar (default: True = enable logs)
  • kwargs (dict) – arguments for the objective function
Returns:

the global best cost and the global best position.

Return type:

tuple

pyswarms.discrete package

The pyswarms.discrete module implements various techniques in discrete optimization. These are techniques that can be applied to a discrete search-space.

pyswarms.discrete.binary module

A Binary Particle Swarm Optimization (binary PSO) algorithm.

It takes a set of candidate solutions, and tries to find the best solution using a position-velocity update method. Unlike pyswarms.single.gb and pyswarms.single.lb, this technique is often applied to discrete binary problems such as job-shop scheduling, sequencing, and the like.

The update rule for the velocity is still similar, as shown in the proceeding equation:

\[v_{ij}(t + 1) = w * v_{ij}(t) + c_{1}r_{1j}(t)[y_{ij}(t) − x_{ij}(t)] + c_{2}r_{2j}(t)[\hat{y}_{j}(t) − x_{ij}(t)]\]

For the velocity update rule, a particle compares its current position with respect to its neighbours. The nearest neighbours are being determined by a kD-tree given a distance metric, similar to local-best PSO. The neighbours are computed for every iteration. However, this whole behavior can be modified into a global-best PSO by changing the nearest neighbours equal to the number of particles in the swarm. In this case, all particles see each other, and thus a global best particle can be established.

In addition, one notable change for binary PSO is that the position update rule is now decided upon by the following case expression:

\[\begin{split}X_{ij}(t+1) = \left\{\begin{array}{lr} 0, & \text{if } \text{rand() } \geq S(v_{ij}(t+1))\\ 1, & \text{if } \text{rand() } < S(v_{ij}(t+1)) \end{array}\right\}\end{split}\]

Where the function \(S(x)\) is the sigmoid function defined as:

\[S(x) = \dfrac{1}{1 + e^{-x}}\]

This enables the algorithm to output binary positions rather than a stream of continuous values as seen in global-best or local-best PSO.

This algorithm was adapted from the standard Binary PSO work of J. Kennedy and R.C. Eberhart in Particle Swarm Optimization [SMC1997].

[SMC1997]J. Kennedy and R.C. Eberhart, “A discrete binary version of particle swarm algorithm,” Proceedings of the IEEE International Conference on Systems, Man, and Cybernetics, 1997.
class pyswarms.discrete.binary.BinaryPSO(n_particles, dimensions, options, init_pos=None, velocity_clamp=None, vh_strategy='unmodified', ftol=-inf, ftol_iter=1)[source]

Bases: pyswarms.base.base_discrete.DiscreteSwarmOptimizer

__init__(n_particles, dimensions, options, init_pos=None, velocity_clamp=None, vh_strategy='unmodified', ftol=-inf, ftol_iter=1)[source]

Initialize the swarm

n_particles

number of particles in the swarm.

Type:int
dimensions

number of dimensions in the space.

Type:int
options

a dictionary containing the parameters for the specific optimization technique

  • c1 : float
    cognitive parameter
  • c2 : float
    social parameter
  • w : float
    inertia parameter
  • k : int
    number of neighbors to be considered. Must be a positive integer less than n_particles
  • p: int {1,2}
    the Minkowski p-norm to use. 1 is the sum-of-absolute values (or L1 distance) while 2 is the Euclidean (or L2) distance.
Type:dict with keys {'c1', 'c2', 'w', 'k', 'p'}
init_pos

option to explicitly set the particles’ initial positions. Set to None if you wish to generate the particles randomly.

Type:numpy.ndarray, optional
velocity_clamp

a tuple of size 2 where the first entry is the minimum velocity and the second entry is the maximum velocity. It sets the limits for velocity clamping.

Type:tuple, optional
vh_strategy

a strategy for the handling of the velocity of out-of-bounds particles. Only the “unmodified” and the “adjust” strategies are allowed.

Type:String
ftol

relative error in objective_func(best_pos) acceptable for convergence

Type:float
ftol_iter

number of iterations over which the relative error in objective_func(best_pos) is acceptable for convergence. Default is 1

Type:int
optimize(objective_func, iters, n_processes=None, verbose=True, **kwargs)[source]

Optimize the swarm for a number of iterations

Performs the optimization to evaluate the objective function f for a number of iterations iter.

Parameters:
  • objective_func (function) – objective function to be evaluated
  • iters (int) – number of iterations
  • n_processes (int, optional) – number of processes to use for parallel particle evaluation Defaut is None with no parallelization.
  • verbose (bool) – enable or disable the logs and progress bar (default: True = enable logs)
  • kwargs (dict) – arguments for objective function
Returns:

the local best cost and the local best position among the swarm.

Return type:

tuple

Utilities

This includes various utilities to help in optimization. Some utilities include benchmark objective functions, hyperparameter search, and plotting functionalities.

pyswarms.utils.decorators package

The pyswarms.decorators module implements a decorator that can be used to simplify the task of writing the cost function for an optimization run. The decorator can be directly called by using @pyswarms.cost.

pyswarms.utils.decorators.cost(cost_func)[source]

A decorator for the cost function

This decorator allows the creation of much simpler cost functions. Instead of writing a cost function that returns a shape of (n_particles, 0) it enables the usage of shorter and simpler cost functions that directly return the cost. A simple example might be:

The decorator expects your cost function to use a d-dimensional array (where d is the number of dimensions for the optimization) as and argument.

Note

Some numpy functions return a np.ndarray with single values in it. Be aware of the fact that without unpacking the value the optimizer will raise an exception.

Parameters:cost_func (callable) – A callable object that can be used as cost function in the optimization (must return a float or an int).
Returns:The vectorized output for all particles as defined by cost_func
Return type:callable

pyswarms.utils.functions package

The mod:pyswarms.utils.functions module implements various test functions for optimization.

pyswarms.utils.functions.single_obj module

single_obj.py: collection of single-objective functions

All objective functions obj_func() must accept a (numpy.ndarray) with shape (n_particles, dimensions). Thus, each row represents a particle, and each column represents its position on a specific dimension of the search-space.

In this context, obj_func() must return an array j of size (n_particles, ) that contains all the computed fitness for each particle.

Whenever you make changes to this file via an implementation of a new objective function, be sure to perform unittesting in order to check if all functions implemented adheres to the design pattern stated above.

Function list: - Ackley’s, ackley - Beale, beale - Booth, booth - Bukin’s No 6, bukin6 - Cross-in-Tray, crossintray - Easom, easom - Eggholder, eggholder - Goldstein, goldstein - Himmelblau’s, himmelblau - Holder Table, holdertable - Levi, levi - Matyas, matyas - Rastrigin, rastrigin - Rosenbrock, rosenbrock - Schaffer No 2, schaffer2 - Sphere, sphere - Three Hump Camel, threehump

pyswarms.utils.functions.single_obj.ackley(x)[source]

Ackley’s objective function.

Has a global minimum of 0 at f(0,0,...,0) with a search domain of [-32, 32]

Parameters:x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)
Returns:computed cost of size (n_particles, )
Return type:numpy.ndarray
ValueError
When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.beale(x)[source]

Beale objective function.

Only takes two dimensions and has a global minimum of 0 at f([3,0.5]) Its domain is bounded between [-4.5, 4.5]

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.booth(x)[source]

Booth’s objective function.

Only takes two dimensions and has a global minimum of 0 at f([1,3]). Its domain is bounded between [-10, 10]

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.bukin6(x)[source]

Bukin N. 6 Objective Function

Only takes two dimensions and has a global minimum of 0 at f([-10,1]). Its coordinates are bounded by:

  • x[:,0] must be within [-15, -5]
  • x[:,1] must be within [-3, 3]
Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.crossintray(x)[source]

Cross-in-tray objective function.

Only takes two dimensions and has a four equal global minimums
of -2.06261 at f([1.34941, -1.34941]), f([1.34941, 1.34941]), f([-1.34941, 1.34941]), and f([-1.34941, -1.34941]).

Its coordinates are bounded within [-10,10].

Best visualized in the full domain and a range of [-2.0, -0.5].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.easom(x)[source]

Easom objective function.

Only takes two dimensions and has a global minimum of -1 at f([pi, pi]). Its coordinates are bounded within [-100,100].

Best visualized in the domain of [-5, 5] and a range of [-1, 0.2].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.eggholder(x)[source]

Eggholder objective function.

Only takes two dimensions and has a global minimum of -959.6407 at f([512, 404.3219]). Its coordinates are bounded within [-512, 512].

Best visualized in the full domain and a range of [-1000, 1000].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.goldstein(x)[source]

Goldstein-Price’s objective function.

Only takes two dimensions and has a global minimum at f([0,-1]). Its domain is bounded between [-2, 2]

Best visualized in the domain of [-1.3,1.3] and range [-1,8000]

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.himmelblau(x)[source]

Himmelblau’s objective function

Only takes two dimensions and has a four equal global minimums
of zero at f([3.0,2.0]), f([-2.805118,3.131312]), f([-3.779310,-3.283186]), and f([3.584428,-1.848126]).

Its coordinates are bounded within [-5,5].

Best visualized with the full domain and a range of [0,1000]

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.holdertable(x)[source]

Holder Table objective function

Only takes two dimensions and has a four equal global minimums
of -19.2085 at f([8.05502, 9.66459]), f([-8.05502, 9.66459]), f([8.05502, -9.66459]), and f([-8.05502, -9.66459]).

Its coordinates are bounded within [-10, 10].

Best visualized with the full domain and a range of [-20, 0]

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.levi(x)[source]

Levi objective function

Only takes two dimensions and has a global minimum at f([1,1]). Its coordinates are bounded within [-10,10].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.matyas(x)[source]

Matyas objective function

Only takes two dimensions and has a global minimum at f([0,0]). Its coordinates are bounded within [-10,10].

Parameters:x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)
Returns:
Return type:numpy.ndarray
pyswarms.utils.functions.single_obj.rastrigin(x)[source]

Rastrigin objective function.

Has a global minimum at f(0,0,...,0) with a search domain of [-5.12, 5.12]

Parameters:x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)
Returns:computed cost of size (n_particles, )
Return type:numpy.ndarray
Raises:ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.rosenbrock(x)[source]

Rosenbrock objective function.

Also known as the Rosenbrock’s valley or Rosenbrock’s banana function. Has a global minimum of np.ones(dimensions) where dimensions is x.shape[1]. The search domain is [-inf, inf].

Parameters:x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)
Returns:computed cost of size (n_particles, )
Return type:numpy.ndarray
pyswarms.utils.functions.single_obj.schaffer2(x)[source]

Schaffer N.2 objective function

Only takes two dimensions and has a global minimum at f([0,0]). Its coordinates are bounded within [-100,100].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain
pyswarms.utils.functions.single_obj.sphere(x)[source]

Sphere objective function.

Has a global minimum at 0 and with a search domain of
[-inf, inf]
Parameters:x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)
Returns:computed cost of size (n_particles, )
Return type:numpy.ndarray
pyswarms.utils.functions.single_obj.threehump(x)[source]

Three-hump camel objective function

Only takes two dimensions and has a global minimum of 0 at f([0, 0]). Its coordinates are bounded within [-5, 5].

Best visualized in the full domin and a range of [0, 2000].

Parameters:

x (numpy.ndarray) – set of inputs of shape (n_particles, dimensions)

Returns:

computed cost of size (n_particles, )

Return type:

numpy.ndarray

Raises:
  • IndexError – When the input dimensions is greater than what the function allows
  • ValueError – When the input is out of bounds with respect to the function domain

pyswarms.utils.plotters package

The mod:pyswarms.utils.plotters module implements various visualization capabilities to interact with your swarm. Here, ou can plot cost history and animate your swarm in both 2D or 3D spaces.

pyswarms.utils.plotters.plotters module

Plotting tool for Optimizer Analysis

This module is built on top of matplotlib to render quick and easy plots for your optimizer. It can plot the best cost for each iteration, and show animations of the particles in 2-D and 3-D space. Furthermore, because it has matplotlib running under the hood, the plots are easily customizable.

For example, if we want to plot the cost, simply run the optimizer, get the cost history from the optimizer instance, and pass it to the plot_cost_history() method

import pyswarms as ps
from pyswarms.utils.functions.single_obj import sphere
from pyswarms.utils.plotters import plot_cost_history

# Set up optimizer
options = {'c1':0.5, 'c2':0.3, 'w':0.9}
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2,
                                    options=options)

# Obtain cost history from optimizer instance
cost_history = optimizer.cost_history

# Plot!
plot_cost_history(cost_history)
plt.show()

In case you want to plot the particle movement, it is important that either one of the matplotlib animation Writers is installed. These doesn’t come out of the box for pyswarms, and must be installed separately. For example, in a Linux or Windows distribution, you can install ffmpeg as

>>> conda install -c conda-forge ffmpeg

Now, if you want to plot your particles in a 2-D environment, simply pass the position history of your swarm (obtainable from swarm instance):

import pyswarms as ps
from pyswarms.utils.functions.single_obj import sphere
from pyswarms.utils.plotters import plot_cost_history

# Set up optimizer
options = {'c1':0.5, 'c2':0.3, 'w':0.9}
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2,
                                    options=options)

# Obtain pos history from optimizer instance
pos_history = optimizer.pos_history

# Plot!
plot_contour(pos_history)

You can also supply various arguments in this method: the indices of the specific dimensions to be used, the limits of the axes, and the interval/ speed of animation.

pyswarms.utils.plotters.plotters.plot_contour(pos_history, canvas=None, title='Trajectory', mark=None, designer=None, mesher=None, animator=None, n_processes=None, **kwargs)[source]

Draw a 2D contour map for particle trajectories

Here, the space is represented as a flat plane. The contours indicate the elevation with respect to the objective function. This works best with 2-dimensional swarms with their fitness in z-space.

Parameters:
  • pos_history (numpy.ndarray or list) – Position history of the swarm with shape (iteration, n_particles, dimensions)
  • canvas ((matplotlib.figure.Figure, matplotlib.axes.Axes),) – The (figure, axis) where all the events will be draw. If None is supplied, then plot will be drawn to a fresh set of canvas.
  • title (str, optional) – The title of the plotted graph. Default is Trajectory
  • mark (tuple, optional) – Marks a particular point with a red crossmark. Useful for marking the optima.
  • designer (pyswarms.utils.formatters.Designer, optional) – Designer class for custom attributes
  • mesher (pyswarms.utils.formatters.Mesher, optional) – Mesher class for mesh plots
  • animator (pyswarms.utils.formatters.Animator, optional) – Animator class for custom animation
  • n_processes (int) – number of processes to use for parallel mesh point calculation (default: None = no parallelization)
  • **kwargs (dict) – Keyword arguments that are passed as a keyword argument to matplotlib.axes.Axes plotting function
Returns:

The drawn animation that can be saved to mp4 or other third-party tools

Return type:

matplotlib.animation.FuncAnimation

pyswarms.utils.plotters.plotters.plot_cost_history(cost_history, ax=None, title='Cost History', designer=None, **kwargs)[source]

Create a simple line plot with the cost in the y-axis and the iteration at the x-axis

Parameters:
  • cost_history (array_like) – Cost history of shape (iters, ) or length iters where each element contains the cost for the given iteration.
  • ax (matplotlib.axes.Axes, optional) – The axes where the plot is to be drawn. If None is passed, then the plot will be drawn to a new set of axes.
  • title (str, optional) – The title of the plotted graph. Default is Cost History
  • designer (pyswarms.utils.formatters.Designer, optional) – Designer class for custom attributes
  • **kwargs (dict) – Keyword arguments that are passed as a keyword argument to matplotlib.axes.Axes
Returns:

The axes on which the plot was drawn.

Return type:

matplotlib.axes._subplots.AxesSubplot

pyswarms.utils.plotters.plotters.plot_surface(pos_history, canvas=None, title='Trajectory', designer=None, mesher=None, animator=None, mark=None, n_processes=None, **kwargs)[source]

Plot a swarm’s trajectory in 3D

This is useful for plotting the swarm’s 2-dimensional position with respect to the objective function. The value in the z-axis is the fitness of the 2D particle when passed to the objective function. When preparing the position history, make sure that the:

  • first column is the position in the x-axis,
  • second column is the position in the y-axis; and
  • third column is the fitness of the 2D particle

The pyswarms.utils.plotters.formatters.Mesher class provides a method that prepares this history given a 2D pos history from any optimizer.

import pyswarms as ps
from pyswarms.utils.functions.single_obj import sphere
from pyswarms.utils.plotters import plot_surface
from pyswarms.utils.plotters.formatters import Mesher

# Run optimizer
options = {'c1':0.5, 'c2':0.3, 'w':0.9}
optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2, options)

# Prepare position history
m = Mesher(func=sphere)
pos_history_3d = m.compute_history_3d(optimizer.pos_history)

# Plot!
plot_surface(pos_history_3d)
Parameters:
  • pos_history (numpy.ndarray) – Position history of the swarm with shape (iteration, n_particles, 3)
  • objective_func (callable) – The objective function that takes a swarm of shape (n_particles, 2) and returns a fitness array of (n_particles, )
  • canvas ((matplotlib.figure.Figure, matplotlib.axes.Axes),) – The (figure, axis) where all the events will be draw. If None is supplied, then plot will be drawn to a fresh set of canvas.
  • title (str, optional) – The title of the plotted graph. Default is Trajectory
  • mark (tuple, optional) – Marks a particular point with a red crossmark. Useful for marking the optima.
  • designer (pyswarms.utils.formatters.Designer, optional) – Designer class for custom attributes
  • mesher (pyswarms.utils.formatters.Mesher, optional) – Mesher class for mesh plots
  • animator (pyswarms.utils.formatters.Animator, optional) – Animator class for custom animation
  • n_processes (int) – number of processes to use for parallel mesh point calculation (default: None = no parallelization)
  • **kwargs (dict) – Keyword arguments that are passed as a keyword argument to matplotlib.axes.Axes plotting function
Returns:

The drawn animation that can be saved to mp4 or other third-party tools

Return type:

matplotlib.animation.FuncAnimation

pyswarms.utils.plotters.formatters module

Plot Formatters

This module implements helpful classes to format your plots or create meshes.

class pyswarms.utils.plotters.formatters.Animator(interval: int = 80, repeat_delay=None, repeat: bool = True)[source]

Bases: object

Animator class for specifying animation behavior

You can use this class to modify options on how the animation will be run in the pyswarms.utils.plotters.plot_contour() and pyswarms.utils.plotters.plot_surface() methods.

from pyswarms.utils.plotters import plot_contour
from pyswarms.utils.plotters.formatters import Animator

# Do not repeat animation
my_animator = Animator(repeat=False)

# Assuming we already had an optimizer ready
plot_contour(pos_history, animator=my_animator)
interval

Sets the interval or speed into which the animation is played. Default is 80

Type:int
repeat_delay

Sets the delay before repeating the animation again.

Type:int or float, optional
repeat

Pass False if you don’t want to repeat the animation. Default is True

Type:bool, optional
class pyswarms.utils.plotters.formatters.Designer(figsize: tuple = (10, 8), title_fontsize='large', text_fontsize='medium', legend='Cost', label=['x-axis', 'y-axis', 'z-axis'], limits=[(-1, 1), (-1, 1), (-1, 1)], colormap=<matplotlib.colors.ListedColormap object>)[source]

Bases: object

Designer class for specifying a plot’s formatting and design

You can use this class for specifying design-related customizations to your plot. This can be passed in various functions found in the pyswarms.utils.plotters module.

from pyswarms.utils.plotters import plot_cost_history
from pyswarms.utils.plotters.formatters import Designer

# Set title_fontsize into 20
my_designer = Designer(title_fontsize=20)

# Assuming we already had an optimizer ready
plot_cost_history(cost_history, designer=my_designer)
figsize

Overall figure size. Default is (10, 8)

Type:tuple
title_fontsize

Size of the plot’s title. Default is large

Type:str, int, or float
text_fontsize

Size of the plot’s labels and legend. Default is medium

Type:str, int, or float
legend

Label to show in the legend. For cost histories, it states the label of the line plot. Default is Cost

Type:str
label

Label to show in the x, y, or z-axis. For a 3D plot, please pass an iterable with three elements. Default is ['x-axis', 'y-axis', 'z-axis']

Type:array_like
limits

The x-, y-, z- limits of the axes. Pass an iterable with the number of elements representing the number of axes. Default is [(-1, 1), (-1, 1), (-1, 1)]

Type:list
colormap

Colormap for contour plots. Default is cm.viridis

Type:matplotlib.cm.Colormap
class pyswarms.utils.plotters.formatters.Mesher(func, delta: float = 0.001, limits=[(-1, 1), (-1, 1)], levels: list = array([-2. , -1.93, -1.86, -1.79, -1.72, -1.65, -1.58, -1.51, -1.44, -1.37, -1.3 , -1.23, -1.16, -1.09, -1.02, -0.95, -0.88, -0.81, -0.74, -0.67, -0.6 , -0.53, -0.46, -0.39, -0.32, -0.25, -0.18, -0.11, -0.04, 0.03, 0.1 , 0.17, 0.24, 0.31, 0.38, 0.45, 0.52, 0.59, 0.66, 0.73, 0.8 , 0.87, 0.94, 1.01, 1.08, 1.15, 1.22, 1.29, 1.36, 1.43, 1.5 , 1.57, 1.64, 1.71, 1.78, 1.85, 1.92, 1.99]), alpha: float = 0.3)[source]

Bases: object

Mesher class for plotting contours of objective functions

This class enables drawing a surface plot of a given objective function. You can customize how this plot is drawn with this class. Pass an instance of this class to enable meshing.

from pyswarms.utils.plotters import plot_surface
from pyswarms.utils.plotters.formatters import Mesher
from pyswarms.utils.functions import single_obj as fx

# Use sphere function
my_mesher = Mesher(func=fx.sphere)

# Assuming we already had an optimizer ready
plot_surface(pos_history, mesher=my_mesher)
func

Objective function to plot a surface of.

Type:callable
delta

Number of steps when generating the surface plot Default is 0.001

Type:float
limits

The range, in each axis, where the mesh will be drawn. Default is [(-1,1), (-1,1)]

Type:list or tuple
levels

Levels on which the contours are shown. If int is passed, then matplotlib automatically computes for the level positions. Default is numpy.arange(-2.0, 2.0, 0.070)

Type:list or int, optional
alpha

Transparency of the surface plot. Default is 0.3

Type:float, optional
limits

The x-, y-, z- limits of the axes. Pass an iterable with the number of elements representing the number of axes. Default is [(-1, 1), (-1, 1)]

Type:list, optional
compute_history_3d(pos_history, n_processes=None)[source]

Compute a 3D position matrix

The first two columns are the 2D position in the x and y axes respectively, while the third column is the fitness on that given position.

Parameters:
  • pos_history (numpy.ndarray) – Two-dimensional position matrix history of shape (iterations, n_particles, 2)
  • n_processes (int) –
  • of processes to use for parallel mesh point calculation (default (number) –
Returns:

3D position matrix of shape (iterations, n_particles, 3)

Return type:

numpy.ndarray

pyswarms.utils.reporter package

class pyswarms.utils.reporter.reporter.Reporter(log_path=None, config_path=None, logger=None, printer=None)[source]

Bases: object

A Reporter object that abstracts various logging capabilities

To set-up a Reporter, simply perform the following tasks:

from pyswarms.utils import Reporter

rep = Reporter()
rep.log("Here's my message", lvl=logging.INFO)

This will set-up a reporter with a default configuration that logs to a file, report.log, on the current working directory. You can change the log path by passing a string to the log_path parameter:

from pyswarms.utils import Reporter

rep = Reporter(log_path="/path/to/log/file.log")
rep.log("Here's my message", lvl=logging.INFO)

If you are working on a module and you have an existing logger, you can pass that logger instance during initialization:

# mymodule.py
from pyswarms.utils import Reporter

# An existing logger in a module
logger = logging.getLogger(__name__)
rep = Reporter(logger=logger)

Lastly, if you have your own logger configuration (YAML file), then simply pass that to the config_path parameter. This overrides the default configuration (including log_path):

from pyswarms.utils import Reporter

rep = Reporter(config_path="/path/to/config/file.yml")
rep.log("Here's my message", lvl=logging.INFO)
__init__(log_path=None, config_path=None, logger=None, printer=None)[source]

Initialize the reporter

log_path

Sets the default log path (overriden when path is given to _setup_logger())

Type:str, optional
config_path

Sets the configuration path for custom loggers

Type:str, optional
logger

The logger object. By default, it creates a new Logger instance

Type:logging.Logger, optional
printer

A printer object. By default, it creates a PrettyPrinter instance with default values

Type:pprint.PrettyPrinter, optional
_load_defaults()[source]

Load default logging configuration

_setup_logger(path=None)[source]

Set-up the logger with default values

This method is called right after initializing the Reporter module. If no path is supplied, then it loads a default configuration. You can view the defaults via the Reporter._default_config attribute.

Parameters:path (str, optional) – Path to a YAML configuration. If not supplied, uses a default config.
hook(*args, **kwargs)[source]

Set a hook on the progress bar

Method for creating a postfix in tqdm. In practice we use this to report the best cost found during an iteration:

from pyswarms.utils import Reporter

rep = Reporter()
# Create a progress bar
for i in rep.pbar(100, name="Optimizer")
        best_cost = compute()
        rep.hook(best_cost=best_cost)
log(msg, lvl=20, *args, **kwargs)[source]

Log a message within a set level

This method abstracts the logging.Logger.log() method. We use this method during major state changes, errors, or critical events during the optimization run.

You can check logging levels on this link. In essence, DEBUG is 10, INFO is 20, WARNING is 30, ERROR is 40, and CRITICAL is 50.

Parameters:
  • msg (str) – Message to be logged
  • lvl (int, optional) – Logging level. Default is logging.INFO
pbar(iters, desc=None)[source]

Create a tqdm iterable

You can use this method to create progress bars. It uses a set of abstracted methods from tqdm:

from pyswarms.utils import Reporter

rep = Reporter()
# Create a progress bar
for i in rep.pbar(100, name="Optimizer")
        pass
Parameters:
  • iters (int) – Maximum range passed to the tqdm instance
  • desc (str, optional) – Name of the progress bar that will be displayed
Returns:

A tqdm iterable

Return type:

tqdm._tqdm.tqdm

print(msg, verbosity, threshold=0)[source]

Print a message into console

This method can be called during non-system calls or minor state changes. In practice, we call this method when reporting the cost on a given timestep.

Parameters:
  • msg (str) – Message to be printed
  • verbosity (int) – Verbosity parameter, prints message when it’s greater than the threshold
  • threshold (int, optional) – Threshold parameter, prints message when it’s lesser than the verbosity. Default is 0

pyswarms.utils.search package

The pyswarms.utils.search module implements various techniques in hyperparameter value optimization.

Indices and tables