The Outranking Approach of Farah and Vanderpooten is a majoritarian method that identifies the "winning" elements by performing pairwise comparisons of their individual rankings. The method is implemented in accordance to the following paper:

  • Farah, M., Vanderpooten, D., "An outranking approach for rank aggregation in information retrieval", In Proceedings of the 30th ACM Conference on Research and Development in Information Retrieval, pp. 591-598, 2007.

The algorithm is based on four threshold values which introduce different perspectives of the majority criterion. These values are the concordance, discordance, preference, and veto thresholds. The user may pass all of them to FLAGR as hyper-parameters, through the input arguments of the OutrankingApproach() function (see below).

Function Definitions

void OutrankingApproach(const char inf[], const char relf[], const int evpts, const char ranstr[],
     const char out[], const float pref_t, const float veto_t, const float conc_t, const float disc_t)

and

__declspec(dllexport) void __cdecl OutrankingApproach(const char inf[], const char relf[], const int evpts,
     const char ranstr[], const char out[],
     const float pref_t, const float veto_t, const float conc_t, const float disc_t)

Implementation Files

Input arguments

  • const char inf[]: The path of the input file that stores the preference lists to be aggregated.
  • const char relf[]: The path of the input file that stores the element relevance judgments.
  • const int evpts: the elements in the aggregate list on which the evaluation measures (i.e. Precision, and nDCG) will be computed.
  • const char ranstr[]: A string that is embedded in the names of the output files. Used when FLAGR is compiled as a shared library.
  • const char out[]: The file system location where the output file with the aggregate list will be stored.
  • const float pref_t: Algorithm hyperparameter - The value of the preference threshold.
  • const float veto_t: Algorithm hyperparameter - The value of the veto threshold.
  • const float conc_t: Algorithm hyperparameter - The value of the concordance threshold.
  • const float disc_t: Algorithm hyperparameter - The value of the discordance threshold.

Description
The input parameters are parsed and stored in a special C structure called UserParams that is defined in src/InputParams.h. Then, UserParams is passed to the execution driver and the rank aggregation process starts.