akanalytics / spsa

Simultaneous perturbation stochastic approximation implemented in Rust

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

spsa

Simultaneous perturbation stochastic approximation implemented in Rust.

  • Fast convergence
  • Black-box, derivative-free optimization
  • Stochastic functions (can be used on noisy functions)
  • Converges well in higher-dimensions
  • Hard constraints by returning NaN
  • Automatic learning rate tuning and adaptive moment estimation
  • Reusable allocation (does not allocate during optimization process)
  • SIMD optimization

Based on this implementation by SimpleArt

API reference (docs.rs)

Usage

Add this to your Cargo.toml:

[dependencies]
spsa = "0.2.1"

License

spsa is distributed under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE and LICENSE-MIT for details.

About

Simultaneous perturbation stochastic approximation implemented in Rust

License:Other


Languages

Language:Rust 100.0%