#include <HungarianAlg.h>
Public Types | |
| enum | TMethod { optimal, many_forbidden_assignments, without_forbidden_assignments } |
Public Member Functions | |
| AssignmentProblemSolver () | |
| track_t | Solve (const distMatrix_t &distMatrixIn, size_t nOfRows, size_t nOfColumns, assignments_t &assignment, TMethod Method=optimal) |
| ~AssignmentProblemSolver () | |
Private Member Functions | |
| void | assignmentoptimal (assignments_t &assignment, track_t &cost, const distMatrix_t &distMatrixIn, size_t nOfRows, size_t nOfColumns) |
| void | assignmentsuboptimal1 (assignments_t &assignment, track_t &cost, const distMatrix_t &distMatrixIn, size_t nOfRows, size_t nOfColumns) |
| void | assignmentsuboptimal2 (assignments_t &assignment, track_t &cost, const distMatrix_t &distMatrixIn, size_t nOfRows, size_t nOfColumns) |
| void | buildassignmentvector (assignments_t &assignment, bool *starMatrix, size_t nOfRows, size_t nOfColumns) |
| void | computeassignmentcost (const assignments_t &assignment, track_t &cost, const distMatrix_t &distMatrixIn, size_t nOfRows) |
| void | step2a (assignments_t &assignment, track_t *distMatrix, bool *starMatrix, bool *newStarMatrix, bool *primeMatrix, bool *coveredColumns, bool *coveredRows, size_t nOfRows, size_t nOfColumns, size_t minDim) |
| void | step2b (assignments_t &assignment, track_t *distMatrix, bool *starMatrix, bool *newStarMatrix, bool *primeMatrix, bool *coveredColumns, bool *coveredRows, size_t nOfRows, size_t nOfColumns, size_t minDim) |
| void | step3 (assignments_t &assignment, track_t *distMatrix, bool *starMatrix, bool *newStarMatrix, bool *primeMatrix, bool *coveredColumns, bool *coveredRows, size_t nOfRows, size_t nOfColumns, size_t minDim) |
| void | step4 (assignments_t &assignment, track_t *distMatrix, bool *starMatrix, bool *newStarMatrix, bool *primeMatrix, bool *coveredColumns, bool *coveredRows, size_t nOfRows, size_t nOfColumns, size_t minDim, size_t row, size_t col) |
| void | step5 (assignments_t &assignment, track_t *distMatrix, bool *starMatrix, bool *newStarMatrix, bool *primeMatrix, bool *coveredColumns, bool *coveredRows, size_t nOfRows, size_t nOfColumns, size_t minDim) |
Definition at line 15 of file HungarianAlg.h.
Definition at line 49 of file HungarianAlg.h.
Definition at line 7 of file HungarianAlg.cpp.
Definition at line 9 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::assignmentoptimal | ( | assignments_t & | assignment, |
| track_t & | cost, | ||
| const distMatrix_t & | distMatrixIn, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns | ||
| ) | [private] |
Definition at line 38 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::assignmentsuboptimal1 | ( | assignments_t & | assignment, |
| track_t & | cost, | ||
| const distMatrix_t & | distMatrixIn, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns | ||
| ) | [private] |
Definition at line 491 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::assignmentsuboptimal2 | ( | assignments_t & | assignment, |
| track_t & | cost, | ||
| const distMatrix_t & | distMatrixIn, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns | ||
| ) | [private] |
Definition at line 435 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::buildassignmentvector | ( | assignments_t & | assignment, |
| bool * | starMatrix, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns | ||
| ) | [private] |
Definition at line 171 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::computeassignmentcost | ( | const assignments_t & | assignment, |
| track_t & | cost, | ||
| const distMatrix_t & | distMatrixIn, | ||
| size_t | nOfRows | ||
| ) | [private] |
Definition at line 189 of file HungarianAlg.cpp.
| track_t AssignmentProblemSolver::Solve | ( | const distMatrix_t & | distMatrixIn, |
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| assignments_t & | assignment, | ||
| TMethod | Method = optimal |
||
| ) |
Definition at line 11 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::step2a | ( | assignments_t & | assignment, |
| track_t * | distMatrix, | ||
| bool * | starMatrix, | ||
| bool * | newStarMatrix, | ||
| bool * | primeMatrix, | ||
| bool * | coveredColumns, | ||
| bool * | coveredRows, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| size_t | minDim | ||
| ) | [private] |
Definition at line 205 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::step2b | ( | assignments_t & | assignment, |
| track_t * | distMatrix, | ||
| bool * | starMatrix, | ||
| bool * | newStarMatrix, | ||
| bool * | primeMatrix, | ||
| bool * | coveredColumns, | ||
| bool * | coveredRows, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| size_t | minDim | ||
| ) | [private] |
Definition at line 232 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::step3 | ( | assignments_t & | assignment, |
| track_t * | distMatrix, | ||
| bool * | starMatrix, | ||
| bool * | newStarMatrix, | ||
| bool * | primeMatrix, | ||
| bool * | coveredColumns, | ||
| bool * | coveredRows, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| size_t | minDim | ||
| ) | [private] |
Definition at line 261 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::step4 | ( | assignments_t & | assignment, |
| track_t * | distMatrix, | ||
| bool * | starMatrix, | ||
| bool * | newStarMatrix, | ||
| bool * | primeMatrix, | ||
| bool * | coveredColumns, | ||
| bool * | coveredRows, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| size_t | minDim, | ||
| size_t | row, | ||
| size_t | col | ||
| ) | [private] |
Definition at line 315 of file HungarianAlg.cpp.
| void AssignmentProblemSolver::step5 | ( | assignments_t & | assignment, |
| track_t * | distMatrix, | ||
| bool * | starMatrix, | ||
| bool * | newStarMatrix, | ||
| bool * | primeMatrix, | ||
| bool * | coveredColumns, | ||
| bool * | coveredRows, | ||
| size_t | nOfRows, | ||
| size_t | nOfColumns, | ||
| size_t | minDim | ||
| ) | [private] |
Definition at line 382 of file HungarianAlg.cpp.