expert: Modeling of Data Using Expert Opinion

Description Usage Arguments Details Value References Examples

View source: R/expert.R

Description

Compute an aggregated distribution from expert opinion using either of the Cooke, Mendel-Sheridan or predefined weights models.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
expert(x, method = c("cooke", "ms", "weights"), probs, true.seed,
       alpha = NULL, w = NULL)

## S3 method for class 'expert'
print(x, ...)

## S3 method for class 'expert'
summary(object, ...)

## S3 method for class 'summary.expert'
print(x, ...)

Arguments

x

a list giving experts' quantiles for the seed variables and the decision variable. See details below for the exact structure of the object. For the methods: an object of class "expert".

method

method to be used to aggregate distributions.

probs

vector of probabilities corresponding to the quantiles given by the experts.

true.seed

vector of true values for the seed variables.

alpha

confidence level in Cooke model. If NULL or missing, the function determines the confidence level that maximizes the weight given to the aggregated distribution for the seed variables.

w

vector of weights in predefined weights model. If NULL or missing, equal weights are given to each expert.

object

an object of class "expert"

...

further arguments to format for the print and print.summary methods; unused for the summary method.

Details

Expert opinion is given by means of quantiles for k seed variables and one decision variable. Results for seed variables are compared to the true values and used to determine the influence of each expert on the aggregated distribution. The three methods supported are different ways to aggregate the information provided by the experts in one final distribution.

The aggregated distribution in the "cooke" method is a convex combination of the quantiles, with weights obtained from the calibration phase. The "weights" method is similar, but weights are provided in argument to the function.

In the "ms" (Mendel-Sheridan) method, the probabilities associated with each quantile are adjusted by a bayesian procedure to reflect results of the calibration phase.

Object x is a list of lists, one for each expert. The latter contains k + 1 vectors of quantiles, one for each seed variable and one for the decision variable (in this order).

If x does not contain the 0th and/or the 100th quantile, they are determined by removing and adding 10% of the smallest interval containing all quantiles given by the experts to the bounds of this interval. Note also that only the Mendel-Sheridan model allows non-finite lower and upper bounds.

Value

Function expert computes the aggregated distribution using the model specified in model. The value returned is an object of class "expert".

An object of class "expert" is a list containing at least the following components:

breaks

vector of knots of the aggregated distribution.

probs

vector of probabilities of the aggregated distribution.

nexp

number of experts in the model.

nseed

number of seed variables in the model.

quantiles

vector of probabilities corresponding to the quantiles given by the experts.

In addition, for method = "cooke", a component alpha containing the confidence level: either the value given in argument to the function or the optimized value.

There are methods available to represent (print), plot (plot), compute quantiles (quantile), summarize (summary) and compute the mean (mean) of "expert" objects.

References

Cooke, R. (1991), Expert in Uncertainty, Oxford University Press.

Mendel, M. and Sheridan, T. (1989), Filtering information from human experts, IEEE Transactions on Systems, Man and Cybernetics, 36, 6–16.

Pigeon, M. (2008), Utilisation d'avis d'experts en actuariat, M.Sc. thesis, Université Laval.

Examples

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
## An example with three experts (E1, E2, E3), two seed variables
## (A1, A2) and three quantiles (10th, 50th and 90th).
x <- list(E1 <- list(A1 <- c(0.14, 0.22, 0.28),
                     A2 <- c(130000, 150000, 200000),
                     X <- c(350000, 400000, 525000)),
          E2 <- list(A1 <- c(0.2, 0.3, 0.4),
                     A2 <- c(165000, 205000, 250000),
                     X <- c(550000, 600000, 650000)),
          E3 <- list(A1 <- c(0.2, 0.4, 0.52),
                     A2 <- c(200000, 400000, 500000),
                     X <- c(625000, 700000, 800000)))
probs <- c(0.1, 0.5, 0.9)
true.seed <- c(0.27, 210000)

## Cooke model
expert(x, "cooke", probs, true.seed, alpha = 0.03) # fixed alpha
expert(x, "cooke", probs, true.seed)               # optimized alpha

## Mendel-Sheridan model
fit <- expert(x, "ms", probs, true.seed)
fit				# print method
summary(fit)                    # more information

## Predefined weights model
expert(x, "weights", probs, true.seed)             # equal weights
expert(x, "weights", probs, true.seed, w = c(0.25, 0.5, 0.25))

Example output

Aggregated Distribution Using Cooke Model

         Interval Probability
 (305000, 512931]         0.1
 (512931, 563423]         0.4
 (563423, 628864]         0.4
 (628864, 845000]         0.1

 Alpha: 0.03 

Aggregated Distribution Using Cooke Model

         Interval Probability
 (305000, 550000]         0.1
 (550000, 600000]         0.4
 (600000, 650000]         0.4
 (650000, 845000]         0.1

 Alpha: 0.3447807 

Aggregated Distribution Using Mendel-Sheridan Model

         Interval Probability
 (305000, 350000]  0.01726313
 (350000, 400000]  0.06864151
 (400000, 525000]  0.06864151
 (525000, 550000]  0.01726313
 (550000, 600000]  0.06864151
 (600000, 625000]  0.06864151
 (625000, 650000]  0.53636155
 (650000, 700000]  0.06864151
 (700000, 800000]  0.06864151
 (800000, 845000]  0.01726313
Call:
expert(x = x, method = "ms", probs = probs, true.seed = true.seed)

Aggregated Distribution Using Mendel-Sheridan Model

         Interval Probability
 (305000, 350000]  0.01726313
 (350000, 400000]  0.06864151
 (400000, 525000]  0.06864151
 (525000, 550000]  0.01726313
 (550000, 600000]  0.06864151
 (600000, 625000]  0.06864151
 (625000, 650000]  0.53636155
 (650000, 700000]  0.06864151
 (700000, 800000]  0.06864151
 (800000, 845000]  0.01726313

 Number of experts: 3,	Number of seed variables: 2
 Quantiles: 0*, 0.1, 0.5, 0.9, 1*	(* were set)

Aggregated Distribution Using Predefined Weights Model

         Interval Probability
 (305000, 508333]         0.1
 (508333, 566667]         0.4
 (566667, 658333]         0.4
 (658333, 845000]         0.1

Aggregated Distribution Using Predefined Weights Model

         Interval Probability
 (305000, 518750]         0.1
 (518750, 575000]         0.4
 (575000, 656250]         0.4
 (656250, 845000]         0.1

expert documentation built on May 2, 2019, 2:27 p.m.

Related to expert in expert...