3 releases

0.0.4 Jan 24, 2022
0.0.3 Jan 13, 2022
0.0.2 Jan 7, 2022
0.0.1 Dec 13, 2021
0.0.0 Dec 13, 2021

#2420 in Algorithms

MIT license

53KB
1K SLoC

Optimum: a Rust-based Optimization Framework

crate documentation build status

Current state: Design, Research and Experimentation. Be aware that I will change a lot of things until the project reaches an initial version.

Based on my experience working with Metaheuristics, I plan to build a framework capable of accelerating the development of solutions efficiently by leveraging Rust features that ease the creation of reliable and efficient software.

Goals

Optimum will be:

  • Flexible
    • It must be reasonably easy to design new metaheuristics and solve many kinds of problems using Optimum. Therefore it needs to be extensible and configurable.
  • Fast
    • Based of zero-cost abstractions, using the framework shouldn't imply in a significant computational overhead.
  • Complete
    • Coding the heuristic is not the only task we have when solving a problem. Parameter tuning, validation of generated solutions, instances, result analysis... It should be easier to get all this done in a convenient, standardized way.

Optimum will have:

  • Increasing support for many kinds of Metaheuristics
  • Common building blocks for the development of problem-specific solutions
  • Evaluation tools to speed up the analysis of the heuristics built
  • And whatever makes sense for us as developers and researchers!

Inspirations

To learn from others is key to design a solution which pushes things forward.

Dependencies

~0.7–1.2MB
~25K SLoC