shortIRT R package for developing tests in an item response theory framework\(^1\) Psicostat, Padova \(^2\) University of Trento, Rovereto
2026-09-03
Large validated item banks (\(B\)) and automatic selection of items to obtain \(Q \subseteq B\)
IRT models for the win
Being focused on the item information and on the ability of each item to measure different levels of the latent trait, IRT models provide an ideal framework to find \[Q \subseteq B\]
Automated Test Assembly
Maximin algorithms
Maxmize the minimun measurement precision in specific regions of interest for the assessment provided by test \(Q\)
Minimax algorithms
Minimize the maximum distance from a target function that describes the desired measurement precision of test \(Q\)
Caution
The automatic test development algorithm strongly relies on the assumptions and models used for the item calibration in the item bank!
shortIRT packageIt’s on CRAN!
ITEM BANK \(B\)
\[\downarrow\]
\(Q \subseteq B\)
\[ \swarrow \qquad\qquad\qquad \searrow \]
Discrete targets
\[\theta_1^*,\theta_2^*,\ldots,\theta_N^*\]
MAXIMIN strategy
\(\theta\)-target procedure
\(|Q_{\text{tt}}| = N\), \(N\) set a priori
Target information function
\[\text{TIF}^*(\theta)\]
MINIMAX strategy
Item Selection ALgorithm (ISA)
\(|Q_{\text{isa}}|\) cannot be known in advance
set.seed(1312)
I = 10
B = data.frame(b = runif(I, -3,3),
a = runif(I, .7, 1.5),
c = runif(I, 0, .10),
e = 1)
theta = seq(-3,3, length.out = 1000)define_targets(theta, num_targets = NULL, method = c("equal", "clusters"))
theta_target()theta_target(targets, item_par)
The item selection is based on the theta-target procedure with equally-spaced targets.
The procedure selected the following 3 dichotomous items:
10 2 8
with parameters:
b a c e
10 2.2438664 1.390367 0.02130947 1
2 -1.2465959 1.283032 0.02087452 1
8 0.3331977 1.208366 0.09370018 1
These items maximize the information for thetas equal to:
2 -2 0
isa()isa(item_pars, tif_target, nmin)
The item selection is based on the isa requiring the selection of at least 2 items
The procedure selected the following 3 dichotomous items:
5 4 1
with parameters:
b a c e
5 -0.1749388 1.0324894 0.04984310 1
4 0.7957328 0.9924159 0.08716286 1
1 -1.0547429 0.9433476 0.01572715 1
| Function | Description |
|---|---|
bench() |
Implement a basic selection procedure |
IRT() |
Compute expected probability for a single item |
mpirt() |
Compute expected probability for multiple items |
obsirt() |
Simulate responses according to IRT probabilities |
irt_estimate() |
Estimate of theta |
item_info() |
Item Information Functions (multiple items, IIFs) |
tif() |
Test Information Function (TIF) |
& the methods defined for the S3 classes
In summary
User-friendly tool for developing tests (or short forms of existing tests) in an IRT framework
Works for both dichotomous and polytomous items
Provides different methods for pursuing different aims of test constructions
Drawbacks
Does not provide ALL possible methods for test construction
Bound to the assumptions and models used for the calibration of the item bank
Does not provide any content balancing control
AIP Sperimentale 2026 - Venezia