org.decisiondeck.xmcda_oo.services.utils
Class Dominance

java.lang.Object
  extended by org.decisiondeck.xmcda_oo.services.utils.Dominance

public class Dominance
extends Object


Constructor Summary
Dominance()
           
 
Method Summary
 Preorder<Alternative> getDominanceRelation(IRdEvaluations evaluations, Map<Criterion,IOrderedInterval> scales)
          Computes the dominance relation in the large sense, i.e. two alternatives dominate each other if they are ex-æquo.
 NavigableSet<Alternative> getStrictDominanceOrder(IRdEvaluations evaluations, Map<Criterion,IOrderedInterval> scales)
          Retrieves the strict dominance relation.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Dominance

public Dominance()
Method Detail

getDominanceRelation

public Preorder<Alternative> getDominanceRelation(IRdEvaluations evaluations,
                                                  Map<Criterion,IOrderedInterval> scales)
                                           throws InvalidInputException
Computes the dominance relation in the large sense, i.e. two alternatives dominate each other if they are ex-æquo. In particular, if all alternatives are equal the returned preorder is a complete graph.

Parameters:
evaluations - not null, not empty. Must be complete.
scales - must contain the preference directions for every criterion contained in the given evaluations.
Returns:
the dominance relation as a preorder, or null iff there are conflicting evaluations, i.e. one criterion gives an alternative a1 strictly better than a2 while an other one gives the opposite.
Throws:
InvalidInputException - if the given evaluations are empty or incomplete, or if some preference directions are missing.

getStrictDominanceOrder

public NavigableSet<Alternative> getStrictDominanceOrder(IRdEvaluations evaluations,
                                                         Map<Criterion,IOrderedInterval> scales)
                                                  throws InvalidInputException
Retrieves the strict dominance relation. This method result is equivalent to getDominanceRelation(org.decisiondeck.xmcda_oo.utils.matrix.IRdEvaluations, java.util.Map) followed by Preorder.getTotalOrder().

Parameters:
evaluations - not null, not empty. Must be complete.
scales - must contain the preference directions for every criterion contained in the given evaluations.
Returns:
the dominance relation as a total order, or null iff there are conflicting evaluations, i.e. one criterion gives an alternative a1 strictly better than a2 while an other one gives the opposite, or if some alternatives have identical evaluations (i.e. the large dominance preorder is not a total order).
Throws:
InvalidInputException - if the given evaluations are empty or incomplete, or if some preference directions are missing.


Copyright © 2011. All Rights Reserved.