|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.decisiondeck.jmcda.services.outranking.Concordance
public class Concordance
A concordance utility allowing to compute electre-style concordance indices and promethee-style preference indices. TODO generalize to accept preference and indifference threshold functions, not only values (function of the evaluation).
| Constructor Summary | |
|---|---|
Concordance()
|
|
| Method Summary | |
|---|---|
IAltZeroToOneMatrix |
concordance(IProblemData data,
ICriteriaWithThresholds thresholds,
Weights weights)
Computes a matrix containing the concordance indices for all the alternatives in the given data. |
double |
concordancePairwize(double evalAlt1,
double evalAlt2,
Criterion.PreferenceDirection direction,
double p,
double q)
Computes the concordance index between two alternatives on a given criterion, i.e. the degree to which the first alternative is preferred (à la Electre) to the second, on a zero to one scale, from the point of view of the given criterion (and not considering discordance and vetoes). |
Map<Criterion,IAltZeroToOneMatrix> |
concordances(IProblemData data,
ICriteriaWithThresholds thresholds)
|
static Map<Criterion,IAltZeroToOneMatrix> |
concordances(ISortingPreferences sortingProblem)
|
IAltZeroToOneMatrix |
preference(IProblemData data,
ICriteriaWithThresholds thresholds,
Weights weights)
Computes a matrix containing the preference indices, a la Promethee, for all the alternatives in the given data. |
double |
preferencePairwize(double evalAlt1,
double evalAlt2,
Criterion.PreferenceDirection direction,
double p,
double q)
|
void |
setTargetColumns(Set<Alternative> columns)
Restricts the columns of the matrixes this object returns to those given. |
void |
setTargetRows(Set<Alternative> rows)
Restricts the rows of the matrixes this object returns to those given. |
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public Concordance()
| Method Detail |
|---|
public IAltZeroToOneMatrix preference(IProblemData data,
ICriteriaWithThresholds thresholds,
Weights weights)
throws InvalidInputException
Computes a matrix containing the preference indices, a la Promethee, for all the alternatives in the given data. The returned matrix is complete.
For the input to be valid, all weights must be provided, all criteria must have preference directions, all
evaluations must be provided, the set of criteria on which thresholds are defined must be in the set of criteria,
the preference threshold must be greater or equal to the indifference threshold for each criteria. Otherwise, an
InvalidInputException is thrown. The scales are not used apart from the preference direction information.
data - not null.thresholds - not null. Missing thresholds are considered zero. Vetoes are not used.weights - must contain a weight for each of the criteria to consider. Not null. Do not have to be
normalized.
null.
InvalidInputException - if the input is not valid.
public double concordancePairwize(double evalAlt1,
double evalAlt2,
Criterion.PreferenceDirection direction,
double p,
double q)
throws InvalidInputException
evalAlt1 - evaluation of the first alternative.evalAlt2 - evaluation of the second alternative.direction - not null.p - the preference threshold.q - the indifference threshold.
InvalidInputException - if the preference threshold is strictly smaller than the indifference threshold.
public double preferencePairwize(double evalAlt1,
double evalAlt2,
Criterion.PreferenceDirection direction,
double p,
double q)
throws InvalidInputException
InvalidInputException
public Map<Criterion,IAltZeroToOneMatrix> concordances(IProblemData data,
ICriteriaWithThresholds thresholds)
throws InvalidInputException
InvalidInputExceptionpublic void setTargetRows(Set<Alternative> rows)
rows - null for no restriction.public void setTargetColumns(Set<Alternative> columns)
columns - null for no restriction.
public IAltZeroToOneMatrix concordance(IProblemData data,
ICriteriaWithThresholds thresholds,
Weights weights)
throws InvalidInputException
Computes a matrix containing the concordance indices for all the alternatives in the given data. The returned matrix is complete.
For the input to be valid, all weights must be provided, all criteria must have preference directions, all
evaluations must be provided, the set of criteria on which thresholds are defined must be in the set of criteria,
the preference threshold must be greater or equal to the indifference threshold for each criteria. Otherwise, an
InvalidInputException is thrown. The scales are not used apart from the preference direction information.
data - not null.thresholds - not null. Missing thresholds are considered zero. Vetoes are not used.weights - must contain a weight for each of the criteria to consider. Not null. Do not have to be
normalized.
null.
InvalidInputException - if the input is not valid.
public static Map<Criterion,IAltZeroToOneMatrix> concordances(ISortingPreferences sortingProblem)
throws InvalidInputException
InvalidInputException
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||