Functions for the rectangular assignment problem

This package provides m- and mex-functions for solving the rectangular assignment problem.
12.9K Downloads
Updated 17 Mar 2014

View License

With this package, I provide some MATLAB-functions regarding the rectangular assignment problem. This problem appears for example in tracking applications, where one has M existing tracks and N new measurements. For each possible assignment, a cost or distance is computed. All cost values form a matrix, where the row index corresponds to the tracks and the column index corresponds to the measurements. The provided functions return an optimal or suboptimal assignment - in the sense of minimum overall costs - for the given matrix.
In the process of gating, typically very unlikely assignments are forbidden. The given functions can handle forbidden assignments, which are marked by setting the corresponding assignment cost to infinity.
The optimal solution is computed using Munkres algorithm, also known as Hungarian Algorithm.

The functions are called like
[assignment, cost] = assignmentalgorithm(distMatrix);

Cite As

Markus Buehren (2024). Functions for the rectangular assignment problem (https://www.mathworks.com/matlabcentral/fileexchange/6543-functions-for-the-rectangular-assignment-problem), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R13SP1
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.5.0.0

Updated munkres_wrap.m to be compatible to the version from http://www.mathworks.com/matlabcentral/fileexchange/20652 as well

1.4.0.0

* Bugfix: free replaced by mxFree in assignmentsuboptimal2.c
* Wrapper for function munkres of Yi Cao (www.mathworks.com/matlabcentral/fileexchange/20328) included for algorithm comparison.

1.3.0.0

Only links added in help lines.

1.2.0.0

Only E-mail changed in html documentation.

1.1.0.0

Minor changes.

1.0.0.0

Documentation updated.