Expand description

Description

This crate’s intended purpose is to offer a modular framework for popular metaheuristics, while simultaneously offering default modules such that the user only needs to focus on the problem-specific aspects of heuristics design.

Custom modules can be built in order to fit the user’s needs.

For now, the following metaheuristics are implemented:

  • Variable Neighborhood Search
  • Simulated Annealing
  • Large Neighborhood Search

Future

The plan for this crate’s future is to assist the user as much as possible in creating metaheuristics. This could mean that other popular metaheuristics are added, or it means that functionality is added to help creating operators.

Modules

Optimization algorithms

Select the next operator to be used

All types required to model termination criteria

Structs

Solution decorated with some metadata

Enums

Evaluation of a proposed candidate

Traits

Evaluate the quality of a solution.

Model of an improvement heuristic based on iterations.

A local search operator returns the neighborhood of its argument.