The Munkres module provides an O(n^3) implementation of the Munkres algorithm (also called the Hungarian algorithm or the Kuhn-Munkres algorithm). The algorithm models an assignment problem as an NxM cost matrix, where each element represents the cost of assigning the ith worker to the jth job, and it figures out the least-cost solution, choosing a single item from each row and column in the matrix, such that no row and no column are used more than once.
This particular implementation is based on https://csclab.murraystate.edu/~bob.pilgrim/445/munkres.html.
See the docs in munkres.py and the home page for more details.
© 2008-2017 Brian M. Clapper
Licensed under the Apache License, Version 2.0. See LICENSE for details.