#function #optimization #benchmark


Benchmarking functions to use for optimization algorithms

4 releases

0.1.6 Aug 1, 2020
0.1.3 Aug 10, 2020
0.1.2 Aug 1, 2020
0.1.1 Aug 1, 2020
0.1.0 Aug 1, 2020

#226 in #benchmark


561 lines


This crate provides functionality for several functions that are commonly used to benchmark new optimization algorithms. More specifically, function is part of a struct that contains the objective function as well as other important information (bounds of the canonical problem, the known minimum value, and a function that returns the global minimizer.

This crate provides access to several single- and multi-objective funtions. For exhaustive lists, check here and here, respectively.

Example Usage

Using this crate is easy! Simply add this crate as a dependency and then use it:

use benchfun::*;

fn main() {
    // Print some info about the ackley function
    println!("Minmimum: {:?}", Ackley::MINIMUM);
    println!("Minmizer: {:?}", Ackley::minimizer(5));
    println!("Minmizer: {:?}", single::Ackley::BOUNDS);

You can also use a use statement that looks more like use benchfun::{SingleObjective} but that's just messy!

No runtime deps