PySwarms

PySwarms: a research toolkit for Particle Swarm Optimization in Python - Published in JOSS (2018)

https://github.com/ljvmiranda921/pyswarms

Science Score: 95.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 19 DOI reference(s) in README and JOSS metadata
  • Academic publication links
    Links to: arxiv.org, joss.theoj.org
  • Committers with academic emails
    3 of 44 committers (6.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
    Published in Journal of Open Source Software

Keywords

algorithm discrete-optimization global-optimization machine-learning metaheuristics optimization optimization-algorithms optimization-tools particle-swarm-optimization pso swarm-intelligence

Keywords from Contributors

data-mining

Scientific Fields

Earth and Environmental Sciences Physical Sciences - 40% confidence
Last synced: 4 months ago · JSON representation

Repository

A research toolkit for particle swarm optimization in Python

Basic Info
Statistics
  • Stars: 1,354
  • Watchers: 41
  • Forks: 338
  • Open Issues: 41
  • Releases: 15
Topics
algorithm discrete-optimization global-optimization machine-learning metaheuristics optimization optimization-algorithms optimization-tools particle-swarm-optimization pso swarm-intelligence
Created over 8 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog Contributing License Code of conduct Authors

README.md

PySwarms Logo

PyPI version Build Status Documentation Status License: MIT DOI Code style: black Gitter Chat

NOTICE: I am not actively maintaining this repository anymore. My research interests have changed in the past few years. I highly recommend checking out scikit-opt for metaheuristic methods including PSO.

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!

  • Free software: MIT license
  • Documentation: https://pyswarms.readthedocs.io.
  • Python versions: 3.5 and above

Features

  • High-level module for Particle Swarm Optimization. For a list of all optimizers, check this link.
  • Built-in objective functions to test optimization algorithms.
  • Plotting environment for cost histories and particle movement.
  • Hyperparameter search tools to optimize swarm behaviour.
  • (For Devs and Researchers): Highly-extensible API for implementing your own techniques.

Installation

To install PySwarms, run this command in your terminal:

shell $ pip install pyswarms

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

In case you want to install the bleeding-edge version, clone this repo:

shell $ git clone -b development https://github.com/ljvmiranda921/pyswarms.git and then run

shell $ cd pyswarms $ python setup.py install

To install PySwarms on Fedora, use:

sh $ dnf install python3-pyswarms

Running in a Vagrant Box

To run PySwarms in a Vagrant Box, install Vagrant by going to https://www.vagrantup.com/downloads.html and downloading the proper packaged from the Hashicorp website.

Afterward, run the following command in the project directory:

shell $ vagrant provision $ vagrant up $ vagrant ssh Now you're ready to develop your contributions in a premade virtual environment.

Basic Usage

PySwarms provides a high-level implementation of various particle swarm optimization algorithms. Thus, it aims to be user-friendly and customizable. In addition, supporting modules can be used to help you in your optimization problem.

Optimizing a sphere function

You can import PySwarms as any other Python module,

python import pyswarms as ps

Suppose we want to find the minima of f(x) = x^2 using global best PSO, simply import the built-in sphere function, pyswarms.utils.functions.sphere(), and the necessary optimizer:

```python 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 PSO

optimizer = ps.single.GlobalBestPSO(n_particles=10, dimensions=2, options=options)

Perform optimization

bestcost, bestpos = optimizer.optimize(fx.sphere, iters=100) ```

Sphere Optimization

This will run the optimizer for 100 iterations, then returns the best cost and best position found by the swarm. In addition, you can also access various histories by calling on properties of the class:

```python

Obtain the cost history

optimizer.cost_history

Obtain the position history

optimizer.pos_history

Obtain the velocity history

optimizer.velocity_history ```

At the same time, you can also obtain the mean personal best and mean neighbor history for local best PSO implementations. Simply call optimizer.mean_pbest_history and optimizer.mean_neighbor_history respectively.

Hyperparameter search tools

PySwarms implements a grid search and random search technique to find the best parameters for your optimizer. Setting them up is easy. In this example, let's try using pyswarms.utils.search.RandomSearch to find the optimal parameters for LocalBestPSO optimizer.

Here, we input a range, enclosed in tuples, to define the space in which the parameters will be found. Thus, (1,5) pertains to a range from 1 to 5.

```python import numpy as np import pyswarms as ps from pyswarms.utils.search import RandomSearch from pyswarms.utils.functions import single_obj as fx

Set-up choices for the parameters

options = { 'c1': (1,5), 'c2': (6,10), 'w': (2,5), 'k': (11, 15), 'p': 1 }

Create a RandomSearch object

nselectioniters is the number of iterations to run the searcher

iters is the number of iterations to run the optimizer

g = RandomSearch(ps.single.LocalBestPSO, nparticles=40, dimensions=20, options=options, objectivefunc=fx.sphere, iters=10, nselectioniters=100)

bestscore, bestoptions = g.search() ```

This then returns the best score found during optimization, and the hyperparameter options that enable it.

```s

bestscore 1.41978545901 bestoptions['c1'] 1.543556887693 best_options['c2'] 9.504769054771 ```

Swarm visualization

It is also possible to plot optimizer performance for the sake of formatting. The plotters module is built on top of matplotlib, making it highly-customizable.

```python import pyswarms as ps from pyswarms.utils.functions import singleobj as fx from pyswarms.utils.plotters import plotcosthistory, plotcontour, plot_surface import matplotlib.pyplot as plt

Set-up optimizer

options = {'c1':0.5, 'c2':0.3, 'w':0.9} optimizer = ps.single.GlobalBestPSO(n_particles=50, dimensions=2, options=options) optimizer.optimize(fx.sphere, iters=100)

Plot the cost

plotcosthistory(optimizer.cost_history) plt.show() ```

CostHistory

We can also plot the animation...

```python from pyswarms.utils.plotters.formatters import Mesher, Designer

Plot the sphere function's mesh for better plots

m = Mesher(func=fx.sphere, limits=[(-1,1), (-1,1)])

Adjust figure limits

d = Designer(limits=[(-1,1), (-1,1), (-0.1,1)], label=['x-axis', 'y-axis', 'z-axis']) ```

In 2D,

python plot_contour(pos_history=optimizer.pos_history, mesher=m, designer=d, mark=(0,0))

Contour

Or in 3D!

python pos_history_3d = m.compute_history_3d(optimizer.pos_history) # preprocessing animation3d = plot_surface(pos_history=pos_history_3d, mesher=m, designer=d, mark=(0,0,0))

Surface

Contributing

PySwarms is currently maintained by a small yet dedicated team: - Lester James V. Miranda (@ljvmiranda921) - Siobhán K. Cronin (@SioKCronin) - Aaron Moser (@whzup) - Steven Beardwell (@stevenbw)

And we would appreciate it if you can lend a hand with the following:

  • Find bugs and fix them
  • Update documentation in docstrings
  • Implement new optimizers to our collection
  • Make utility functions more robust.

We would also like to acknowledge all our contributors, past and present, for making this project successful!

If you wish to contribute, check out our contributing guide. Moreover, you can also see the list of features that need some help in our Issues page.

Most importantly, first-time contributors are welcome to join! I try my best to help you get started and enable you to make your first Pull Request! Let's learn from each other!

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.

Cite us

Are you using PySwarms in your project or research? Please cite us!

  • Miranda L.J., (2018). PySwarms: a research toolkit for Particle Swarm Optimization in Python. Journal of Open Source Software, 3(21), 433, https://doi.org/10.21105/joss.00433

bibtex @article{pyswarmsJOSS2018, author = {Lester James V. Miranda}, title = "{P}y{S}warms, a research-toolkit for {P}article {S}warm {O}ptimization in {P}ython", journal = {Journal of Open Source Software}, year = {2018}, volume = {3}, issue = {21}, doi = {10.21105/joss.00433}, url = {https://doi.org/10.21105/joss.00433} }

Projects citing PySwarms

Not on the list? Ping us in the Issue Tracker!

  • Gousios, Georgios. Lecture notes for the TU Delft TI3110TU course Algorithms and Data Structures. Accessed May 22, 2018. http://gousios.org/courses/algo-ds/book/string-distance.html#sop-example-using-pyswarms.
  • Nandy, Abhishek, and Manisha Biswas., "Applying Python to Reinforcement Learning." Reinforcement Learning. Apress, Berkeley, CA, 2018. 89-128.
  • Benedetti, Marcello, et al., "A generative modeling approach for benchmarking and training shallow quantum circuits." arXiv preprint arXiv:1801.07686 (2018).
  • Vrbančič et al., "NiaPy: Python microframework for building nature-inspired algorithms." Journal of Open Source Software, 3(23), 613, https://doi.org/10.21105/joss.00613
  • Häse, Florian, et al. "Phoenics: A Bayesian optimizer for chemistry." ACS Central Science. 4.9 (2018): 1134-1145.
  • Szynkiewicz, Pawel. "A Comparative Study of PSO and CMA-ES Algorithms on Black-box Optimization Benchmarks." Journal of Telecommunications and Information Technology 4 (2018): 5.
  • Mistry, Miten, et al. "Mixed-Integer Convex Nonlinear Optimization with Gradient-Boosted Trees Embedded." Imperial College London (2018).
  • Vishwakarma, Gaurav. Machine Learning Model Selection for Predicting Properties of High Refractive Index Polymers Dissertation. State University of New York at Buffalo, 2018.
  • Uluturk Ismail, et al. "Efficient 3D Placement of Access Points in an Aerial Wireless Network." 2019 16th IEEE Anual Consumer Communications and Networking Conference (CCNC) IEEE (2019): 1-7.
  • Downey A., Theisen C., et al. "Cam-based passive variable friction device for structural control." Engineering Structures Elsevier (2019): 430-439.
  • Thaler S., Paehler L., Adams, N.A. "Sparse identification of truncation errors." Journal of Computational Physics Elsevier (2019): vol. 397
  • Lin, Y.H., He, D., Wang, Y. Lee, L.J. "Last-mile Delivery: Optimal Locker locatuion under Multinomial Logit Choice Model" https://arxiv.org/abs/2002.10153
  • Park J., Kim S., Lee, J. "Supplemental Material for Ultimate Light trapping in free-form plasmonic waveguide" KAIST, University of Cambridge, and Cornell University http://www.jlab.or.kr/documents/publications/2019PRApplied_SI.pdf
  • Pasha A., Latha P.H., "Bio-inspired dimensionality reduction for Parkinson's Disease Classification," Health Information Science and Systems, Springer (2020).
  • Carmichael Z., Syed, H., et al. "Analysis of Wide and Deep Echo State Networks for Multiscale Spatiotemporal Time-Series Forecasting," Proceedings of the 7th Annual Neuro-inspired Computational Elements ACM (2019), nb. 7: 1-10 https://doi.org/10.1145/3320288.3320303
  • Klonowski, J. "Optimizing Message to Virtual Link Assignment in Avionics Full-Duplex Switched Ethernet Networks" Proquest
  • Haidar, A., Jan, ZM. "Evolving One-Dimensional Deep Convolutional Neural Netowrk: A Swarm-based Approach," IEEE Congress on Evolutionary Computation (2019) https://doi.org/10.1109/CEC.2019.8790036
  • Shang, Z. "Performance Evaluation of the Control Plane in OpenFlow Networks," Freie Universitat Berlin (2020)
  • Linker, F. "Industrial Benchmark for Fuzzy Particle Swarm Reinforcement Learning," Liezpic University (2020)
  • Vetter, A. Yan, C. et al. "Computational rule-based approach for corner correction of non-Manhattan geometries in mask aligner photolithography," Optics (2019). vol. 27, issue 22: 32523-32535 https://doi.org/10.1364/OE.27.032523
  • Wang, Q., Megherbi, N., Breckon T.P., "A Reference Architecture for Plausible Thread Image Projection (TIP) Within 3D X-ray Computed Tomography Volumes" https://arxiv.org/abs/2001.05459
  • Menke, Tim, Hase, Florian, et al. "Automated discovery of superconducting circuits and its application to 4-local coupler design," arxiv preprint: https://arxiv.org/abs/1912.03322

Others

Like it? Love it? Leave us a star on Github to show your appreciation!

Contributors

Thanks goes to these wonderful people (emoji key):


Aaron

🚧 💻 📖 ⚠️ 🤔 👀

Carl-K

💻 ⚠️

Siobhán K Cronin

💻 🚧 🤔

Andrew Jarcho

⚠️ 💻

Mamady

💻

Jay Speidell

💻

Eric

🐛 💻

CPapadim

🐛 💻

JiangHui

💻

Jericho Arcelao

💻

James D. Bohrman

💻

bradahoward

💻

ThomasCES

💻

Daniel Correia

🐛 💻

fluencer

💡 📖

miguelcocruz

📖 💡

Steven Beardwell

💻 🚧 📖 🤔

Nathaniel Ngo

📖

Aneal Sharma

📖

Chris McClure

📖 💡

Christopher Angell

📖

Kutim

🐛

Jake Souter

🐛 💻

Ian Zhang

📖 💡

Zach

📖

Michel Lavoie

🐛

ewekam

📖

Ivyna Santino

📖 💡

Muhammad Yasirroni

📖

Christian Kastner

📖 📦

Nishant Rodrigues

💻

msat59

💻 🐛

Diego

📖

Shaad Alaka

📖

Krzysztof Błażewicz

🐛

Jorge Castillo

📖

Philipp Danner

💻

Nikhil Sethi

💻 📖

firefly-cpp

📖

This project follows the all-contributors specification. Contributions of any kind welcome!

Owner

  • Name: Lj Miranda
  • Login: ljvmiranda921
  • Kind: user
  • Company: @explosion

Machine Learning Engineer at @explosion 💥

JOSS Publication

PySwarms: a research toolkit for Particle Swarm Optimization in Python
Published
January 11, 2018
Volume 3, Issue 21, Page 433
Authors
Lester James Miranda ORCID
Waseda University
Editor
Kyle Niemeyer ORCID
Tags
particle swarm optimization swarm intelligence optimization algorithms

GitHub Events

Total
  • Issues event: 2
  • Watch event: 77
  • Issue comment event: 2
  • Pull request event: 1
  • Fork event: 10
Last Year
  • Issues event: 2
  • Watch event: 77
  • Issue comment event: 2
  • Pull request event: 1
  • Fork event: 10

Committers

Last synced: 5 months ago

All Time
  • Total Commits: 364
  • Total Committers: 44
  • Avg Commits per committer: 8.273
  • Development Distribution Score (DDS): 0.599
Past Year
  • Commits: 0
  • Committers: 0
  • Avg Commits per committer: 0.0
  • Development Distribution Score (DDS): 0.0
Top Committers
Name Email Commits
ljvmiranda921 l****a@o****u 146
Lester James V. Miranda l****a@g****m 84
pyup-bot g****t@p****o 28
allcontributors[bot] 4****] 26
Aaron 3****p 21
Daniel Correia d****6 5
Mamady m****o@g****m 3
SioKCronin s****n@g****m 3
Nishant Rodrigues n****4@g****m 3
Nikhil Sethi 5****i 3
Andrew Jarcho a****o@g****m 3
CPapadim p****c@g****m 2
Carl c****k@y****m 2
Eric Mascot s****0@g****m 2
Jay Speidell j****l@g****m 2
Steven Beardwell 4****w 2
firefly-cpp i****k@i****u 2
Christopher McClure c****e@C****l 1
ichbinjakes s****l@h****m 1
James D. Bohrman j****n@p****m 1
Ian Zhang s****6@g****m 1
Aneal Sharma a****a@h****m 1
fluencer f****r@g****m 1
ewekam 4****m 1
bradahoward h****h@g****m 1
Zach z****0@g****u 1
ThomasCES t****u@m****r 1
Shaad Alaka A****1 1
Philipp Danner p****p@d****e 1
Muhammad Yasirroni 4****i 1
and 14 more...
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 90
  • Total pull requests: 38
  • Average time to close issues: 6 months
  • Average time to close pull requests: 2 months
  • Total issue authors: 78
  • Total pull request authors: 23
  • Average comments per issue: 2.4
  • Average comments per pull request: 1.82
  • Merged pull requests: 16
  • Bot issues: 0
  • Bot pull requests: 6
Past Year
  • Issues: 3
  • Pull requests: 2
  • Average time to close issues: N/A
  • Average time to close pull requests: 2 minutes
  • Issue authors: 3
  • Pull request authors: 1
  • Average comments per issue: 0.33
  • Average comments per pull request: 0.0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • ljvmiranda921 (5)
  • Antonio-Nappi (4)
  • whzup (3)
  • ghost (2)
  • AfnanTurky (2)
  • yasirroni (2)
  • NealWood (1)
  • ibell (1)
  • AidanHawk (1)
  • Evolutionary-Intelligence (1)
  • peterfakhry (1)
  • agcala (1)
  • TristanVenot (1)
  • nickcorona (1)
  • frenzymadness (1)
Pull Request Authors
  • allcontributors[bot] (6)
  • lukebemish (3)
  • nikhil-sethi (3)
  • firefly-cpp (3)
  • dannerph (2)
  • Haleshot (2)
  • stapin (2)
  • Bladieblah (2)
  • busFred (1)
  • alipmv (1)
  • ljvmiranda921 (1)
  • scimax (1)
  • LucasWaelti (1)
  • caiofcm (1)
  • zachschillaci27 (1)
Top Labels
Issue Labels
stale (36) question (5) enhancement (4) documentation (3) nice-to-have (3) help wanted (2) admin (2) tech-debt (2) unit tests (1) v.1.1.0 (1) first-timers-only (1) bug (1)
Pull Request Labels
stale (10) enhancement (3) admin (1)

Packages

  • Total packages: 16
  • Total downloads:
    • pypi 58,316 last-month
  • Total dependent packages: 17
    (may contain duplicates)
  • Total dependent repositories: 60
    (may contain duplicates)
  • Total versions: 40
  • Total maintainers: 3
pypi.org: pyswarms

A Python-based Particle Swarm Optimization (PSO) library.

  • Versions: 20
  • Dependent Packages: 16
  • Dependent Repositories: 59
  • Downloads: 58,293 Last month
Rankings
Dependent packages count: 0.8%
Downloads: 1.5%
Average: 1.8%
Stargazers count: 1.9%
Dependent repos count: 1.9%
Forks count: 2.9%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.18: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 3.1%
Forks count: 4.7%
Stargazers count: 7.5%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.18: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 3.1%
Forks count: 4.7%
Stargazers count: 7.5%
Maintainers (1)
Last synced: 4 months ago
alpine-edge: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 3
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 6.0%
Average: 7.2%
Stargazers count: 9.3%
Dependent packages count: 13.4%
Maintainers (1)
Last synced: 4 months ago
alpine-edge: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 4
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 5.9%
Average: 7.4%
Stargazers count: 9.0%
Dependent packages count: 14.6%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.17: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Forks count: 4.3%
Stargazers count: 7.4%
Average: 9.7%
Dependent packages count: 27.3%
Maintainers (1)
Last synced: 4 months ago
pypi.org: clpso

clpso

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 1
  • Downloads: 23 Last month
Rankings
Stargazers count: 1.9%
Forks count: 2.9%
Dependent packages count: 10.1%
Average: 15.6%
Dependent repos count: 21.5%
Downloads: 41.7%
Maintainers (1)
Last synced: 4 months ago
conda-forge.org: pyswarms
  • Versions: 1
  • Dependent Packages: 1
  • Dependent Repositories: 0
Rankings
Forks count: 8.8%
Stargazers count: 11.5%
Average: 20.8%
Dependent packages count: 28.8%
Dependent repos count: 34.0%
Last synced: 4 months ago
alpine-v3.22: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.19: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.19: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.22: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.21: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.20: py3-pyswarms

A research toolkit for particle swarm optimization in Python

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.21: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago
alpine-v3.20: py3-pyswarms-pyc

Precompiled Python bytecode for py3-pyswarms

  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 0.0%
Dependent packages count: 0.0%
Average: 100%
Maintainers (1)
Last synced: 4 months ago

Dependencies

requirements-dev.txt pypi
  • alabaster ==0.7.12 development
  • attrs ==18.1.0 development
  • babel ==2.6.0 development
  • backcall ==0.1.0 development
  • bleach ==3.1.0 development
  • bumpversion ==0.5.3 development
  • certifi ==2018.11.29 development
  • chardet ==3.0.4 development
  • coverage ==4.5.1 development
  • cycler ==0.10.0 development
  • decorator ==4.4.0 development
  • defusedxml ==0.6.0 development
  • docutils ==0.14 development
  • entrypoints ==0.3 development
  • flake8 ==3.5.0 development
  • future ==0.16.0 development
  • idna ==2.8 development
  • imagesize ==1.1.0 development
  • iniconfig ==1.1.1 development
  • ipykernel ==5.1.1 development
  • ipython ==7.5.0 development
  • ipython-genutils ==0.2.0 development
  • jedi ==0.13.3 development
  • jinja2 ==2.10 development
  • joblib ==0.13.2 development
  • jsonschema ==3.0.1 development
  • jupyter-client ==5.2.4 development
  • jupyter-core ==4.4.0 development
  • kiwisolver ==1.0.1 development
  • markupsafe ==1.1.0 development
  • matplotlib ==3.0.2 development
  • mccabe ==0.6.1 development
  • mistune ==0.8.4 development
  • mock ==2.0.0 development
  • nbconvert ==5.5.0 development
  • nbformat ==4.4.0 development
  • nbsphinx ==0.4.2 development
  • nbstripout ==0.3.5 development
  • numpy ==1.16.1 development
  • packaging ==19.0 development
  • pandas ==0.24.2 development
  • pandocfilters ==1.4.2 development
  • parso ==0.4.0 development
  • pbr ==5.1.1 development
  • pexpect ==4.7.0 development
  • pickleshare ==0.7.5 development
  • pluggy ==0.13.1 development
  • pockets ==0.7.2 development
  • prompt-toolkit ==2.0.9 development
  • ptyprocess ==0.6.0 development
  • py ==1.9.0 development
  • pycodestyle ==2.3.1 development
  • pyflakes ==1.6.0 development
  • pygments ==2.3.1 development
  • pyparsing ==2.3.1 development
  • pyrsistent ==0.15.2 development
  • pytest ==6.1.2 development
  • pytest-cov ==2.10.1 development
  • python-dateutil ==2.7.5 development
  • pytz ==2018.9 development
  • pyyaml ==3.13 development
  • pyzmq ==18.0.1 development
  • requests ==2.21.0 development
  • scikit-learn ==0.21.1 development
  • scipy ==1.2.0 development
  • seaborn ==0.9.0 development
  • six ==1.12.0 development
  • snowballstemmer ==1.2.1 development
  • sphinx >=1.8,<2 development
  • sphinx-rtd-theme ==0.4.3 development
  • sphinxcontrib-napoleon ==0.7 development
  • sphinxcontrib-websupport ==1.1.0 development
  • testpath ==0.4.2 development
  • toml ==0.10.2 development
  • tornado ==6.0.2 development
  • tox ==3.2.1 development
  • tqdm ==4.24.0 development
  • traitlets ==4.3.2 development
  • urllib3 ==1.24.1 development
  • virtualenv ==16.3.0 development
  • wcwidth ==0.1.7 development
  • webencodings ==0.5.1 development
  • wheel ==0.31.1 development
requirements.in pypi
  • attrs *
  • future *
  • matplotlib >=1.3.1
  • numpy *
  • pyyaml *
  • scipy *
  • tqdm *
requirements.txt pypi
  • attrs ==18.1.0
  • cycler ==0.10.0
  • future ==0.16.0
  • kiwisolver ==1.0.1
  • matplotlib ==3.0.2
  • numpy ==1.16.1
  • pyparsing ==2.3.1
  • python-dateutil ==2.7.5
  • pyyaml ==5.1.1
  • scipy ==1.2.0
  • six ==1.12.0
  • tqdm ==4.24.0
requirements-dev.in pypi
  • PyYAML ==3.13 development
  • Sphinx * development
  • bumpversion ==0.5.3 development
  • coverage ==4.5.1 development
  • flake8 ==3.5.0 development
  • ipykernel * development
  • ipython * development
  • mock ==2.0.0 development
  • nbsphinx * development
  • nbstripout * development
  • pytest * development
  • pytest-cov * development
  • scikit-learn * development
  • seaborn * development
  • sphinx_rtd_theme * development
  • sphinxcontrib-napoleon * development
  • tox * development
  • wheel ==0.31.1 development