|
| | AssignmentAuction ()=default |
| |
| | ~AssignmentAuction () override=default |
| |
| int | run (std::vector< MatchingType > &matchings) override |
| |
| void | runAuctionRound (std::vector< std::vector< dataType > > &cMatrix) |
| |
| void | initFirstRound () |
| |
| void | initBiddersAndGoods () |
| |
| void | initEpsilon () |
| |
| void | epsilonScaling () |
| |
| void | makeBalancedMatrix (std::vector< std::vector< dataType > > &matrix) |
| |
| bool | stoppingCriterion (std::vector< std::vector< dataType > > &cMatrix) |
| |
| dataType | getRelativePrecision (std::vector< std::vector< dataType > > &cMatrix) |
| |
| dataType | getMatchingDistance (std::vector< std::vector< dataType > > &cMatrix) |
| |
| void | setBalanced (bool balanced) override |
| |
| void | setNumberOfRounds (int noRounds) |
| |
| int | getIter () |
| |
| void | setEpsilon (double eps) |
| |
| void | setEpsilonDiviserMultiplier (double div) |
| |
| void | setPrices (std::vector< double > prices) |
| |
| std::vector< double > & | getPrices () |
| |
| | Debug () |
| |
| | ~Debug () override |
| |
| virtual int | setDebugLevel (const int &debugLevel) |
| |
| int | setWrapper (const Wrapper *wrapper) override |
| |
| int | printMsg (const std::string &msg, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::vector< std::string > &msgs, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| |
| int | printErr (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
| |
| int | printWrn (const std::string &msg, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cerr) const |
| |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const double &memory, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::string &msg, const double &progress, const double &time, const int &threads, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::string &msg, const double &progress, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::PERFORMANCE, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::string &msg, const double &progress, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::vector< std::vector< std::string > > &rows, const debug::Priority &priority=debug::Priority::INFO, const bool hasHeader=true, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const debug::Separator &separator, const debug::Priority &priority, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const |
| |
| int | printMsg (const std::string &msg, const debug::Separator &separator, const debug::LineMode &lineMode=debug::LineMode::NEW, const debug::Priority &priority=debug::Priority::INFO, std::ostream &stream=std::cout) const |
| |
| void | setDebugMsgPrefix (const std::string &prefix) |
| |
| | BaseClass () |
| |
| virtual | ~BaseClass ()=default |
| |
| int | getThreadNumber () const |
| |
| virtual int | setThreadNumber (const int threadNumber) |
| |
| | AssignmentSolver ()=default |
| |
| | ~AssignmentSolver () override=default |
| |
| virtual void | clear () |
| |
| virtual void | clearMatrix () |
| |
| virtual int | setInput (std::vector< std::vector< dataType > > &C_) |
| |
| virtual std::vector< std::vector< dataType > > | getCostMatrix () |
| |
| virtual std::vector< std::vector< dataType > > * | getCostMatrixPointer () |
| |
| void | printTableVector (std::vector< std::vector< dataType > > &table) |
| |
template<class dataType>
class ttk::AssignmentAuction< dataType >
- Author
- Mathieu Pont (mathi.nosp@m.eu.p.nosp@m.ont@l.nosp@m.ip6..nosp@m.fr)
Auction algorithm for Balanced and Unbalanced Assignment Problem
For the unbalanced problem: The cost matrix in input has a size of (n + 1) x (m + 1)
- n is the number of jobs, m the number of workers
- the nth row contains the cost of not assigning workers
- the mth column is the same but with jobs
- the last cell (costMatrix[n][m]) is not used
Definition at line 24 of file AssignmentAuction.h.