Hungarian / Munkres' algorithm for the linear assignment problem, in Python
Switch branches/tags
Nothing to show
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
CHANGES tidy Nov 5, 2012
LICENSE MIT License Aug 17, 2016
README.md Update README.md Dec 28, 2017
__init__.py Making properly backwards compatible with Python 2 Oct 12, 2017
asp.cpp as of June 26, 2008 Nov 4, 2012
asp.h as of June 26, 2008 Nov 4, 2012
example.py Expand printing in example Dec 19, 2017
hungarian.cpp Making properly backwards compatible with Python 2 Oct 12, 2017
setup.py v0.3.0 python 3 support 🎉 Dec 28, 2017

README.md

This module is just a simple wrapper for a C++ implementation of Knuth's Hungarian algorithm, a.k.a. Munkres' algorithm, for the linear assignment problem.

For a faster, but less tolerant, LAP algorithm see http://github.com/hrldcpr/pyLAPJV

Note that this module depends on the numpy module. You must install numpy before you can compile this module. Numpy can be downloaded from http://numpy.scipy.org

If you have any problems with this module, you should contact me, not Mr. Battre.

To build this module run:

> python setup.py build

Then you can either put the file build/lib-/hungarian.so in the same directory as the code that will be using it, or you can install it so that all of your python programs can see it:

> python setup.py install

For the module's documentation, type at a Python prompt:

>>> help('hungarian')

Additional Information:

This wrapper for the algorithm uses double precision (i.e. 64-bit) floating point arithmetic. To change it to single precision, integer, or anything else, simply change the corresponding types in asp.h