Features

Algorithms

NiaPy features more than 30 algorithms. They are categorized as basic, modified, and others.

Basic algorithms

  • Artificial Bee Colony

  • Bacterial Foraging Optimization

  • Bat Algorithm

  • Bees Algorithm

  • Camel Algorithm

  • Cat Swarm Optimization

  • Clonal Selection Algorithm

  • Coral Reefs Optimization Algorithm

  • Cuckoo Search

  • Differential Evolution

  • Evolution Strategy

  • Firefly Algorithm

  • Fireworks Algorithm

  • Fish School Search

  • Flower Pollination Algorithm

  • Forest Optimization Algorithm

  • Genetic Algorithm

  • Glowworm Swarm Optimization

  • Gravitational Search Algorithm

  • Grey Wolf Optimizer

  • Harmony Search

  • Harris Hawks Optimization

  • Krill Herd Algorithm

  • Monarch Butterfly Optimization

  • Monkey King Evolution

  • Moth flame Optimizer

  • Particle Swarm Optimization

  • Sine Cosine Algorithm

Documentation for the basic algorithms can be found here: niapy.algorithms.basic.

Modified algorithms

  • Hybrid Bat Algorithm

  • Self-adaptive Differential Evolution

  • Dynamic Population Size Self-adaptive Differential Evolution

Documentation for the modified algorithms can be found here: niapy.algorithms.modified.

Other algorithms

  • Anarchic Society Optimization

  • Hill Climb algorithm

  • Multiple Trajectory Search

  • Nelder Mead Method

  • Simulated Annealing

Documentation for the other algorithms can be found here: niapy.algorithms.other.

Functions

NiaPy features more than 30 optimization test problems. Documentation for them can be found here: niapy.problems.

  • Ackley

  • Alpine
    • Alpine1

    • Alpine2

  • Bent Cigar

  • Chung Reynolds

  • Cosine Mixture

  • Csendes

  • Discus

  • Dixon-Price

  • Elliptic

  • Griewank - Expanded Griewank plus Rosenbrock

  • Happy cat

  • HGBat

  • Katsuura

  • Levy

  • Michalewicz

  • Perm

  • Pintér

  • Powell

  • Qing

  • Quintic

  • Rastrigin

  • Ridge

  • Rosenbrock

  • Salomon

  • Schaffer - Schaffer N. 2 - Schaffer N. 4 - Expanded Schaffer

  • Schumer Steiglitz

  • Schwefel
    • Schwefel 2.21

    • Schwefel 2.22

    • Modified Schwefel

  • Sphere
    • Sphere2 -> Sphere with different powers

    • Sphere3 -> Rotated hyper-ellipsoid

  • Step
    • Step2

    • Step3

  • Stepint

  • Styblinski-Tang

  • Sum Squares

  • Trid

  • Weierstrass

  • Whitley

  • Zakharov

Other features

  • Using different termination conditions (function evaluations, number of iterations, cutoff value)

  • Storing improvements during the evolutionary cycle

  • Custom initialization of initial population