Crate metaheuristics [] [src]

Find approximate solutions to your optimisation problem using metaheuristics algorithms

What are Metaheuristics

Metaheuristics are a class of stochastic optimisation algorithms. These type of algorithms rely on randomness to jump around the search space, then sample where they land for possible solutions. In simple terms, metaheuristics are structured trial and error.

How can I use this crate

By implementing the Metaheuristics trait, the algorithms within the following modules will be available to you. To see an example implementation, check out the Travelling Salesman Problem crate.

Example

 let solution = metaheuristics::hill_climbing::solve(&mut problem, runtime);

Modules

hill_climbing

Find an approximate solution to your optimisation problem using Hill Climbing

random_search

Find an approximate solution to your optimisation problem using Random Search

simulated_annealing

Find an approximate solution to your optimisation problem using Simulated Annealing

Traits

Metaheuristics

Implement this simple trait to apply metaheuristics to your optimisation problems