Compensatory: DiBello-Samejima combination function

CompensatoryR Documentation

DiBello–Samejima combination function

Description

These functions take a vector of “effective theta” values for a collection of parent variables and calculates the effective theta value for the child variable according to the named rule. Used in calculating DiBello–Samejima and DiBello–Normal probability tables. These all have one slope parameter (alpha) per parent variable.

Usage

Compensatory(theta, alphas, beta)
Conjunctive(theta, alphas, beta)
Disjunctive(theta, alphas, beta)

Arguments

theta

A matrix of effective theta values whose columns correspond to parent variables and whose rows correspond to possible skill profiles.

alphas

A vector of discrimination parameters in the same order as the columns of theta. (Note these function expect discrimination parameters and not log discrimination parameters as used in calcDSTable.)

beta

A difficulty (-intercept) parameter.

Details

For Compensatory, the combination function for each row is:

(alphas[1]*theta[1] + ... + alphas[K]*theta[K])/sqrt(K) - beta

where K is the number of parents. (The \sqrt{K} is a variance stabilization parameter.)

For Conjunctive, the combination function for each row is:

min(alphas[1]*theta[1], ..., alphas[K]*theta[K]) - beta

For Disjunctive, the combination function for each row is:

max(alphas[1]*theta[1], ..., alphas[K]*theta[K]) - beta

Value

A vector of normal deviates corresponding to the effective theta value. Length is the number of rows of thetas.

Note

These functions expect the unlogged discrimination parameters, while calcDSTable expect the log of the discrimination parameters. The rationale is that log discrimination is bound away from zero, and hence a more natural space for MCMC algorithms. However, it is poor programming design, as it is liable to catch the unwary.

These functions are meant to be used as structure functions in the DiBello–Samejima and DiBello–Normal models. Other structure functions are possible and can be excepted by those functions as long as they have the same signature as these functions.

Author(s)

Russell Almond

References

Almond, R.G., Mislevy, R.J., Steinberg, L.S., Yan, D. and Williamson, D.M. (2015) Bayesian Networks in Educational Assessment. Springer. Chapter 8.

Almond, R.G., DiBello, L., Jenkins, F., Mislevy, R.J., Senturk, D., Steinberg, L.S. and Yan, D. (2001) Models for Conditional Probability Tables in Educational Assessment. Artificial Intelligence and Statistics 2001 Jaakkola and Richardson (eds)., Morgan Kaufmann, 137–143.

See Also

effectiveThetas,calcDSTable, calcDNTable, calcDPCTable, OffsetConjunctive, eThetaFrame

Examples

  thetas <- expand.grid(list(S1=seq(1,-1), S2 = seq(1, -1)))
  Compensatory(thetas, c(S1=1.25,S2=.75), 0.33)
  Conjunctive(thetas, c(S1=1.25,S2=.75), 0.33)
  Disjunctive(thetas, c(S1=1.25,S2=.75), 0.33)

  skill <- c("High","Medium","Low")
  eThetaFrame(list(S1=skill,S2=skill), c(S1=1.25,S2=.75), 0.33, "Compensatory")
  eThetaFrame(list(S1=skill,S2=skill), c(S1=1.25,S2=.75), 0.33, "Conjunctive")
  eThetaFrame(list(S1=skill,S2=skill), c(S1=1.25,S2=.75), 0.33, "Disjunctive")


ralmond/CPTtools documentation built on Dec. 27, 2024, 7:15 a.m.