Skip to content

Latest commit

 

History

History
46 lines (33 loc) · 1.54 KB

README.md

File metadata and controls

46 lines (33 loc) · 1.54 KB

PSO-JAX

An accelerated Particle Swarm Optimization tool that uses JAX key component. Here are the main benefits:

  • Runs on Python.
  • Supports multi-core CPUs, GPUs, and TPUs.
  • Compatible with Colab environment.

Getting Started

Colab example

Open In Colab  

Local example

In the case of Ubuntu 18.04

$ virtualenv --system-site-packages -p python3 ./venv-pso-jax
$ source venv-pso-jax/bin/activate
(venv-pso-jax) $ pip install --upgrade jax jaxlib # CPU-only version
(venv-pso-jax) $ pip install pyswarms
(venv-pso-jax) $ pip install --upgrade tensorflow
(venv-pso-jax) $ python PSO-JAX-knapspack-example.py

Usage

Please cite the following paper:

@inproceedings{ermantraut2020resolucion,
  title={Resolución del problema de la mochila mediante la metaheurística PSO acelerada con JAX},
  author={Ermantraut, Joel and Crisol, Tomas and Díaz, Ariel and Balmaceda, Leandro and Rostagno, Adrián and Aggio, Santiago and Blanco, Anibal M and Iparraguirre, Javier},
  booktitle={Simposio Argentino de Inform{\'a}tica Industrial e Investigaci{\'o}n Operativa (SIIIO 2030)-JAIIO 49 (Buenos Aires)},
  year={2020}
}

References