# How to select next item in polytomous CAT / MIRT?

To make a Computerized Adaptive Test out of a sample of 20 dichotomous items a typical course of action would be to:

1) calibrate respondent data with a R package like mirt or ltm using Rasch, 2PL etc.

2) create an itembank based on obtained item parameters using catR

then, for each item/test taken:

3) use catR's nextItem function and method (e.g. MFI) for selecting a next item based on previous items and answers

4) choose a stopping rule, e.g. stop if SEM < 0.2.

5) use last theta and SEM as 'test results'

However, regarding polytomous items and multidimensional tests I'm a bit confused. For a polytomous, multidimensional CAT, e.g. 100 items (5 scales) of a personality test with a 5-point-likert scale, the test logic, item parameters (GRM/GPCM) and item selection are very different.

Specific question: is there a polytomous version of catR's nextItem function available?

Broader question: What methods/packages/steps would you recommend for making a working polytomous CAT with MIRT?

• Patient Reported Outcomes Measurement System (PROMIS) from NIH uses all polytomous items and it would be worthwhile to check them out to see how they are stopping the items. – doug.numbers Jun 5 '13 at 15:31
• Starting with version 3.0, polytomous IRT models have been included in catR. – aleatorio Jan 13 '15 at 10:20

In response to your two part question, for polytomous items the logic really isn't any different from dichotomous applications. The fundamental difference is that the information response curves aren't so cleanly peaked around one particular $\theta$, so an item may be selected for several different ability levels (may be peaked around both $\theta = -1$ and $\theta = 1.5$, for example). So criteria like (weighted ) maximum Fisher information, Kullback-Leibler information, maximum posteriori weight information, etc, are well defined and pretty accessible.
EDIT: Since responding to this comment, I've released an R package called mirtCAT to build unidimensional and multidimensional CAT web interfaces using tools from the shiny suite, as well as run offline response patterns for Monte Carlo work.