Kuhn-Munkres (aka Hungarian) algorithm for solving the Assignment Problem in O(n^3), written in Rust.
Go to file
Michael Killough d3e2c23415 Support for disallowed assignments.
Add support for disallowed assignments, and include a check to avoid
attempting to solve unsolvable matrices (where a row only has disallowed
values).

For now only allow `f32`/`f64`, as we can use `INFINITY` to encode a
disallowed assignment.

This is a re-implementation of most of bmc/munkres#20, but is missing
the changes to `step6`, which attempt to detect when we're not making
progress. I couldn't implement this without regressing performance and I
am not sure they add much given we're checking `is_solvable()` before
attempting to solve.
2017-11-07 12:21:19 +00:00
src Support for disallowed assignments. 2017-11-07 12:21:19 +00:00
.gitignore Initial commit 2015-10-19 19:18:47 +02:00
.travis.yml Add travis 2015-10-19 19:28:06 +02:00
Cargo.toml Use ndarray to implement SquareMatrix 2017-10-16 16:34:14 +01:00
LICENSE Initial import 2015-10-19 19:27:11 +02:00
README.md Add todo itemAdd todo itemAdd todo itemAdd todo itemAdd todo itemAdd todo itemAdd todo itemAdd todo item 2015-11-29 17:31:11 +01:00
rustfmt.toml rustfmt 2015-11-29 16:31:50 +01:00

munkres-rs Build Status

Kuhn-Munkres (aka Hungarian) algorithm for solving the Assignment Problem written in Rust.

This is a modified port from https://github.com/bmc/munkres.

TODO

  • Implement SIMD f32x4 weight matrix