Learn R Programming

rpf (version 1.0.14)

rpf.lmp: Create logistic function of a monotonic polynomial (LMP) model

Description

This model is a dichotomous response model originally proposed by Liang (2007) and is implemented using the parameterization by Falk & Cai (2016).

Usage

rpf.lmp(q = 0, multidimensional = FALSE)

Value

an item model

Arguments

q

a non-negative integer that controls the order of the polynomial (2q+1) with a default of q=0 (1st order polynomial = 2PL).

multidimensional

whether to use a multidimensional model. Defaults to FALSE. The multidimensional version is not yet available.

Details

The LMP model replaces the linear predictor part of the two-parameter logistic function with a monotonic polynomial, \(m(\theta,\omega,\xi,\mathbf{\alpha},\mathbf{\tau})\),

$$\mathrm P(\mathrm{pick}=1|\omega,\xi,\mathbf{\alpha},\mathbf{\tau},\theta) = \frac{1}{1+\exp(-(\xi + m(\theta;\omega,\mathbf{\alpha},\mathbf{\tau})))} $$

where \(\mathbf{\alpha}\) and \(\mathbf{\tau}\) are vectors of length q.

The order of the polynomial is always odd and is controlled by the user specified non-negative integer, q. The model contains 2+2*q parameters and are used in conjunction with the rpf.prob or rpf.dTheta function in the following order: \(\omega\) - the natural log of the slope of the item model when q=0, \(\xi\) - the intercept, \(\alpha\) and \(\tau\) - two parameters that control bends in the polynomial. These latter parameters are repeated in the same order for models with q>0. For example, a q=2 polynomial with have an item parameter vector of: \(\omega, \xi, \alpha_1, \tau_1, \alpha_2, \tau_2\).

In general, the polynomial looks like the following:

$$m(\theta;\omega,\alpha,\tau) = b_1\theta + b_2\theta^2 + \dots + b_{2q+1}\theta^{2q+1} $$

However, the coefficients, b, are not directly estimated, but are a function of the item parameters. In particular, the derivative \(m'(\theta;\omega,\alpha,\tau)\) is parameterized in the following way:

$$m'(\theta;\omega,\alpha,\tau) = \left\{\begin{array}{ll}\exp(\omega) \prod_{u=1}^q(1-2\alpha_{u}\theta + (\alpha_{u}^2 + \exp(\tau_{u}))\theta^2) & \mbox{if } q > 0 \\ \exp(\omega) & \mbox{if } q = 0\end{array} \right.$$

See Falk & Cai (2016) for more details as to how the polynomial is constructed. At the lowest order polynomial (q=0) the model reduces to the two-parameter logistic (2PL) model. However, parameterization of the slope parameter, \(\omega\), is currently different than the 2PL (i.e., slope = exp(\(\omega\))). This parameterization ensures that the response function is always monotonically increasing without requiring constrained optimization.

For an alternative parameterization that releases constraints on \(\omega\), allowing for monotonically decreasing functions, see rpf.grmp. And for polytomous items, see both rpf.grmp and rpf.gpcmp.

References

Falk, C. F., & Cai, L. (2016). Maximum marginal likelihood estimation of a monotonic polynomial generalized partial credit model with applications to multiple group analysis. Psychometrika, 81, 434-460. tools:::Rd_expr_doi("10.1007/s11336-014-9428-7")

Liang (2007). A semi-parametric approach to estimating item response functions. Unpublished doctoral dissertation, Department of Psychology, The Ohio State University.

See Also

Other response model: rpf.drm(), rpf.gpcmp(), rpf.grmp(), rpf.grm(), rpf.mcm(), rpf.nrm()

Examples

Run this code
spec <- rpf.lmp(1) # 3rd order polynomial
theta<-seq(-3,3,.1)
p<-rpf.prob(spec, c(-.11,.37,.24,-.21),theta)

spec <- rpf.lmp(2) # 5th order polynomial
p<-rpf.prob(spec, c(.69,.71,-.5,-8.48,.52,-3.32),theta)

Run the code above in your browser using DataLab