PASS is a C++11 / C++14 library for solving optimisation problems

PASS


PASS is written in C++14 and uses Armadillo (developed by Conrad Sanderson et al., NICTA, Australia) for highly efficient linear algebra calculations.

  • Scales with your hardware
  • Support of SIMD vectorisation, multi-cores and high performance cluster are implemented
  • SIMD vectorisation (SSE2, SSE3, SS4 and AVX)
  • Automatically offers MPI- and OpenMP-support without changing the source code
  • Can automatically use OpenMP multi-threading to speed up computationally expensive operations
  • Can automatically use MPI (Message Passing Interface) to implement the Island Model for PSO
  • Easy installation and use
  • Only one dependency - Armadillo
  • Available under a permissive license, useful for both open-source and proprietary (closed-source) software

Implemented Problems

  1. Optimisation Benchmark Problems
    1. Ackley Function
    2. De Jong's Function
    3. Griewank Function
    4. Rastrigin Function
    5. Rosenbrock Function
    6. Schwefel Function
    7. Styblinski-Tang Function
    8. Sum of Different Powers Function
  2. Space Mission Problems - Real World Problems
    1. GTOC1
    2. Messenger (Full Version)
    3. Cassini1
    4. Rosetta

Implemented Algorithms

  1. Parallel Swarm Search (own)
  2. Standard Particle Swarm Optimisation 2011
  3. Random Search

Main developers

  • Romeo Shuka
  • Philipp Schiffmann

Credits

  • Special thanks go to Sebastian Niemann for helping during the developement.