[][src]Crate ddo


DDO is a truly generic framework to develop MDD-based combinatorial optimization solvers in Rust. Its goal is to let you describe your optimization problem as a dynamic program (see Problem) along with a Relaxation. When the dynamic program of the problem is considered as a transition system, the relaxation serves the purpose of merging different nodes of the transition system into an other node standing for them all. In that setup, the sole condition to ensure the correctness of the optimization algorithm is that the replacement node must be an over approximation of all what is feasible from the merged nodes.

Side benefit

As a side benefit from using ddo, you will be able to exploit all of your hardware to solve your optimization in parallel.



This module and its submodule provide the definition and implementation of all traits and structures that are required to develop an MDD-based optimization solver.