TTK
Loading...
Searching...
No Matches
ttk::PersistenceDiagramAuction Class Reference

#include <PersistenceDiagramAuction.h>

Inheritance diagram for ttk::PersistenceDiagramAuction:
ttk::Debug ttk::BaseClass

Public Types

using KDT = Bidder::KDT

Public Member Functions

int getAugmentedNumberOfBidders ()
void initLowerBoundCostWeight (double delta_lim)
double initLowerBoundCost (const int kdt_index=0)
 PersistenceDiagramAuction (int wasserstein, double geometricalFactor, double lambda, double delta_lim, bool use_kdTree, double nonMatchingWeight=1.0)
 PersistenceDiagramAuction (BidderDiagram &bidders, GoodDiagram &goods, int wasserstein, double geometricalFactor, double lambda, double delta_lim, KDT &kdt, std::vector< KDT * > &correspondence_kdt_map, double epsilon={}, double initial_diag_price={}, bool use_kdTree=true, double nonMatchingWeight=1.0)
void runAuctionRound (int &n_biddings, const int kdt_index=0)
double getMatchingsAndDistance (std::vector< MatchingType > &matchings, bool get_diagonal_matches=false)
double run (std::vector< MatchingType > &matchings, const int kdt_index=0)
double run ()
double getMaximalPrice ()
void BuildAuctionDiagrams (const BidderDiagram &BD, const GoodDiagram &GD)
void BuildAuctionDiagrams (const DiagramType &diagram1, const DiagramType &diagram2)
void setBidders (const DiagramType &diagram1)
void setGoods (const DiagramType &diagram2)
void buildKDTree ()
void setEpsilon (const double epsilon)
void initializeEpsilon ()
void buildUnassignedBidders ()
void reinitializeGoods ()
double getMatchingDistance ()
double getRelativePrecision ()
void updateDiagonalPrices ()
double getMinimalDiagonalPrice ()
Public Member Functions inherited from ttk::Debug
 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)
Public Member Functions inherited from ttk::BaseClass
 BaseClass ()
virtual ~BaseClass ()=default
int getThreadNumber () const
virtual int setThreadNumber (const int threadNumber)

Public Attributes

KDT default_kdt_ {}
KDTkdt_ {default_kdt_}
std::vector< KDT * > default_correspondence_kdt_map_ {}
std::vector< KDT * > & correspondence_kdt_map_

Protected Attributes

int wasserstein_ {2}
BidderDiagram default_bidders_ {}
BidderDiagrambidders_ {default_bidders_}
GoodDiagram default_goods_ {}
GoodDiagramgoods_ {default_goods_}
GoodDiagram diagonal_goods_
std::priority_queue< std::pair< int, double >, std::vector< std::pair< int, double > >, Comparediagonal_queue_ {}
std::queue< int > unassignedBidders_ {}
int n_bidders_ {0}
int n_goods_ {0}
double epsilon_ {1}
double geometricalFactor_ {}
double lambda_ {}
double delta_lim_ {}
double lowerBoundCost_
double lowerBoundCostWeight_
bool use_kdt_ {true}
double nonMatchingWeight_ = 1.0
Protected Attributes inherited from ttk::Debug
int debugLevel_
std::string debugMsgPrefix_
std::string debugMsgNamePrefix_
Protected Attributes inherited from ttk::BaseClass
bool lastObject_
int threadNumber_
Wrapperwrapper_

Additional Inherited Members

Protected Member Functions inherited from ttk::Debug
int printMsgInternal (const std::string &msg, const std::string &right, const std::string &filler, const debug::Priority &priority=debug::Priority::INFO, const debug::LineMode &lineMode=debug::LineMode::NEW, std::ostream &stream=std::cout) const
int printMsgInternal (const std::string &msg, const debug::Priority &priority, const debug::LineMode &lineMode, std::ostream &stream=std::cout) const
int welcomeMsg (std::ostream &stream)
Static Protected Attributes inherited from ttk::Debug
static COMMON_EXPORTS debug::LineMode lastLineMode = ttk::debug::LineMode::NEW

Detailed Description

Definition at line 8 of file PersistenceDiagramAuction.h.

Member Typedef Documentation

◆ KDT

Constructor & Destructor Documentation

◆ PersistenceDiagramAuction() [1/2]

ttk::PersistenceDiagramAuction::PersistenceDiagramAuction ( int wasserstein,
double geometricalFactor,
double lambda,
double delta_lim,
bool use_kdTree,
double nonMatchingWeight = 1.0 )
inline

Definition at line 29 of file PersistenceDiagramAuction.h.

◆ PersistenceDiagramAuction() [2/2]

ttk::PersistenceDiagramAuction::PersistenceDiagramAuction ( BidderDiagram & bidders,
GoodDiagram & goods,
int wasserstein,
double geometricalFactor,
double lambda,
double delta_lim,
KDT & kdt,
std::vector< KDT * > & correspondence_kdt_map,
double epsilon = {},
double initial_diag_price = {},
bool use_kdTree = true,
double nonMatchingWeight = 1.0 )
inline

Definition at line 40 of file PersistenceDiagramAuction.h.

Member Function Documentation

◆ BuildAuctionDiagrams() [1/2]

void ttk::PersistenceDiagramAuction::BuildAuctionDiagrams ( const BidderDiagram & BD,
const GoodDiagram & GD )
inline

Definition at line 101 of file PersistenceDiagramAuction.h.

◆ BuildAuctionDiagrams() [2/2]

void ttk::PersistenceDiagramAuction::BuildAuctionDiagrams ( const DiagramType & diagram1,
const DiagramType & diagram2 )
inline

Definition at line 133 of file PersistenceDiagramAuction.h.

◆ buildKDTree()

void ttk::PersistenceDiagramAuction::buildKDTree ( )
inline

Definition at line 183 of file PersistenceDiagramAuction.h.

◆ buildUnassignedBidders()

void ttk::PersistenceDiagramAuction::buildUnassignedBidders ( )
inline

Definition at line 226 of file PersistenceDiagramAuction.h.

◆ getAugmentedNumberOfBidders()

int ttk::PersistenceDiagramAuction::getAugmentedNumberOfBidders ( )
inline

Definition at line 11 of file PersistenceDiagramAuction.h.

◆ getMatchingDistance()

double ttk::PersistenceDiagramAuction::getMatchingDistance ( )
inline

Definition at line 243 of file PersistenceDiagramAuction.h.

◆ getMatchingsAndDistance()

double ttk::PersistenceDiagramAuction::getMatchingsAndDistance ( std::vector< MatchingType > & matchings,
bool get_diagonal_matches = false )

Definition at line 73 of file PersistenceDiagramAuction.cpp.

◆ getMaximalPrice()

double ttk::PersistenceDiagramAuction::getMaximalPrice ( )

Definition at line 52 of file PersistenceDiagramAuction.cpp.

◆ getMinimalDiagonalPrice()

double ttk::PersistenceDiagramAuction::getMinimalDiagonalPrice ( )
inline

Definition at line 273 of file PersistenceDiagramAuction.h.

◆ getRelativePrecision()

double ttk::PersistenceDiagramAuction::getRelativePrecision ( )
inline

Definition at line 253 of file PersistenceDiagramAuction.h.

◆ initializeEpsilon()

void ttk::PersistenceDiagramAuction::initializeEpsilon ( )
inline

Definition at line 209 of file PersistenceDiagramAuction.h.

◆ initLowerBoundCost()

double ttk::PersistenceDiagramAuction::initLowerBoundCost ( const int kdt_index = 0)

Definition at line 114 of file PersistenceDiagramAuction.cpp.

◆ initLowerBoundCostWeight()

void ttk::PersistenceDiagramAuction::initLowerBoundCostWeight ( double delta_lim)
inline

Definition at line 23 of file PersistenceDiagramAuction.h.

◆ reinitializeGoods()

void ttk::PersistenceDiagramAuction::reinitializeGoods ( )
inline

Definition at line 234 of file PersistenceDiagramAuction.h.

◆ run() [1/2]

double ttk::PersistenceDiagramAuction::run ( )
inline

Definition at line 95 of file PersistenceDiagramAuction.h.

◆ run() [2/2]

double ttk::PersistenceDiagramAuction::run ( std::vector< MatchingType > & matchings,
const int kdt_index = 0 )

Definition at line 155 of file PersistenceDiagramAuction.cpp.

◆ runAuctionRound()

void ttk::PersistenceDiagramAuction::runAuctionRound ( int & n_biddings,
const int kdt_index = 0 )

Definition at line 3 of file PersistenceDiagramAuction.cpp.

◆ setBidders()

void ttk::PersistenceDiagramAuction::setBidders ( const DiagramType & diagram1)
inline

Definition at line 164 of file PersistenceDiagramAuction.h.

◆ setEpsilon()

void ttk::PersistenceDiagramAuction::setEpsilon ( const double epsilon)
inline

Definition at line 205 of file PersistenceDiagramAuction.h.

◆ setGoods()

void ttk::PersistenceDiagramAuction::setGoods ( const DiagramType & diagram2)
inline

Definition at line 174 of file PersistenceDiagramAuction.h.

◆ updateDiagonalPrices()

void ttk::PersistenceDiagramAuction::updateDiagonalPrices ( )
inline

Definition at line 266 of file PersistenceDiagramAuction.h.

Member Data Documentation

◆ bidders_

BidderDiagram& ttk::PersistenceDiagramAuction::bidders_ {default_bidders_}
protected

Definition at line 290 of file PersistenceDiagramAuction.h.

◆ correspondence_kdt_map_

std::vector<KDT *>& ttk::PersistenceDiagramAuction::correspondence_kdt_map_
Initial value:

Definition at line 20 of file PersistenceDiagramAuction.h.

◆ default_bidders_

BidderDiagram ttk::PersistenceDiagramAuction::default_bidders_ {}
protected

Definition at line 289 of file PersistenceDiagramAuction.h.

◆ default_correspondence_kdt_map_

std::vector<KDT *> ttk::PersistenceDiagramAuction::default_correspondence_kdt_map_ {}

Definition at line 19 of file PersistenceDiagramAuction.h.

◆ default_goods_

GoodDiagram ttk::PersistenceDiagramAuction::default_goods_ {}
protected

Definition at line 291 of file PersistenceDiagramAuction.h.

◆ default_kdt_

KDT ttk::PersistenceDiagramAuction::default_kdt_ {}

Definition at line 17 of file PersistenceDiagramAuction.h.

◆ delta_lim_

double ttk::PersistenceDiagramAuction::delta_lim_ {}
protected

Definition at line 311 of file PersistenceDiagramAuction.h.

◆ diagonal_goods_

GoodDiagram ttk::PersistenceDiagramAuction::diagonal_goods_
protected

Definition at line 293 of file PersistenceDiagramAuction.h.

◆ diagonal_queue_

std::priority_queue<std::pair<int, double>, std::vector<std::pair<int, double> >, Compare> ttk::PersistenceDiagramAuction::diagonal_queue_ {}
protected

Definition at line 297 of file PersistenceDiagramAuction.h.

◆ epsilon_

double ttk::PersistenceDiagramAuction::epsilon_ {1}
protected

Definition at line 303 of file PersistenceDiagramAuction.h.

◆ geometricalFactor_

double ttk::PersistenceDiagramAuction::geometricalFactor_ {}
protected

Definition at line 304 of file PersistenceDiagramAuction.h.

◆ goods_

GoodDiagram& ttk::PersistenceDiagramAuction::goods_ {default_goods_}
protected

Definition at line 292 of file PersistenceDiagramAuction.h.

◆ kdt_

KDT& ttk::PersistenceDiagramAuction::kdt_ {default_kdt_}

Definition at line 18 of file PersistenceDiagramAuction.h.

◆ lambda_

double ttk::PersistenceDiagramAuction::lambda_ {}
protected

Definition at line 310 of file PersistenceDiagramAuction.h.

◆ lowerBoundCost_

double ttk::PersistenceDiagramAuction::lowerBoundCost_
protected

Definition at line 312 of file PersistenceDiagramAuction.h.

◆ lowerBoundCostWeight_

double ttk::PersistenceDiagramAuction::lowerBoundCostWeight_
protected

Definition at line 312 of file PersistenceDiagramAuction.h.

◆ n_bidders_

int ttk::PersistenceDiagramAuction::n_bidders_ {0}
protected

Definition at line 300 of file PersistenceDiagramAuction.h.

◆ n_goods_

int ttk::PersistenceDiagramAuction::n_goods_ {0}
protected

Definition at line 301 of file PersistenceDiagramAuction.h.

◆ nonMatchingWeight_

double ttk::PersistenceDiagramAuction::nonMatchingWeight_ = 1.0
protected

Definition at line 314 of file PersistenceDiagramAuction.h.

◆ unassignedBidders_

std::queue<int> ttk::PersistenceDiagramAuction::unassignedBidders_ {}
protected

Definition at line 298 of file PersistenceDiagramAuction.h.

◆ use_kdt_

bool ttk::PersistenceDiagramAuction::use_kdt_ {true}
protected

Definition at line 313 of file PersistenceDiagramAuction.h.

◆ wasserstein_

int ttk::PersistenceDiagramAuction::wasserstein_ {2}
protected

Definition at line 288 of file PersistenceDiagramAuction.h.


The documentation for this class was generated from the following files: