Filter a matrix of values to identify pareto-optimal solutions

paretoFilter(x, ...)

Arguments

x

matrix of values with each row representing a solution

...

ignored

Value

Those values in 'x' which are not dominated by any other solution.

See also

paretoTimeAnalysis_areModelsDominated which uses this function to evaluate model performance across time-periods

Author

From the mco package. Heike Trautmann <email: trautmann@statistik.uni-dortmund.de>, Detlef Steuer <email: steuer@hsu-hamburg.de> and Olaf Mersmann <email: olafm@statistik.uni-dortmund.de>

Examples


## Performance measures from 4 models in the Salmon catchment,
##  see YeAl97
mat <- matrix(c(
  0.865, 0.892, -0.847, 0.795,
  0.774, 0.905, 0.819, 0.930
), nrow = 4)
mat
#>        [,1]  [,2]
#> [1,]  0.865 0.774
#> [2,]  0.892 0.905
#> [3,] -0.847 0.819
#> [4,]  0.795 0.930
## Identify dominated rows of the matrix, interpreting
##   higher values to be better
## TRUE: The 2nd and 4th rows are pareto-optimal/non-dominated
## FALSE: The 1st and 3rd rows are both inferior to the 2nd row,
##   and are therefore dominated
paretoFilter(-mat)
#> [1] FALSE  TRUE FALSE  TRUE