Learn R Programming

smaa (version 0.3-3)

smaa.entropy: Decision entropy

Description

Calculate decision entropy from the sampled SMAA rankings. For both ranking and choice problematics.

Usage

smaa.entropy.ranking(ranks, p0 = 1)
smaa.entropy.choice(ra, p0 = 1)

Value

The entropy (a single numeric value).

Arguments

ranks

Object of class smaa.ranks containing sampled SMAA rankings.

ra

Object of class smaa.ra containing SMAA rank acceptabilities. Alternatively, an object of class smaa.ranks from which the rank acceptabilities will be calculated.

p0

Baseline probability for the entropy calculation.

Author

Gert van Valkenhoef

Details

Calculates the entropy for the given problematic, quantifying either the uncertainty in the ranking of the alternatives (where the outcome space \(Y\) consists of the \(m!\) possible rankings) or in the choice of the best alternative (where the outcome space \(Y\) consists of the \(m\) alternatives). The entropy is given by: $$H(Y|W) = -\sum_{y \in Y} p_0 p(y|W) \log p_0 p(y|W)$$ where \(W\) is the space of feasible weights. Since the SMAA analysis samples from the outcome space, the \(p(y|W)\) can be estimated directly from the given sample.

References

G. van Valkenhoef and T. Tervonen, Optimal weight constraint elicitation for additive multi-attribute utility models, presentation at EURO 2013, July 2013, Rome, Italy.

See Also

smaa.ranks smaa.ra

Examples

Run this code
N <- 1E4; m <- 2; n <- 3
meas <- dget(system.file("extdata/thrombo-meas.txt.gz", package="smaa"))
pref <- dget(system.file("extdata/thrombo-weights-nopref.txt.gz", package="smaa"))

# Calculate ranks
values <- smaa.values(meas, pref)
ranks <- smaa.ranks(values)

# Calculate ranking entropy
smaa.entropy.ranking(ranks)

# Calculate choice entropy
# (equal to ranking entropy because there are only two alternatives)
smaa.entropy.choice(ranks)
smaa.entropy.choice(smaa.ra(ranks))

Run the code above in your browser using DataLab