Learn R Programming

TestDesign (version 1.7.0)

Optimal Test Design Approach to Fixed and Adaptive Test Construction

Description

Uses the optimal test design approach by Birnbaum (1968, ISBN:9781593119348) and van der Linden (2018) to construct fixed, adaptive, and parallel tests. Supports the following mixed-integer programming (MIP) solver packages: 'Rsymphony', 'highs', 'gurobi', 'lpSolve', and 'Rglpk'. The 'gurobi' package is not available from CRAN; see .

Copy Link

Version

Install

install.packages('TestDesign')

Monthly Downloads

493

Version

1.7.0

License

GPL (>= 2)

Maintainer

Seung W. Choi

Last Published

August 22nd, 2024

Functions in TestDesign (1.7.0)

addSolutionToConstraintData

(Internal) Count number of items in a solution that match a constraint
applyEligibilityConstraintsToXdata

(Internal) Augment constraint matrix-data with eligibility constraints
applyEligibilityConstraintsToInfo

(Internal) Modify item information using eligibility constraints
applyFading

(Internal) Apply fading to exposure record
applyShrinkageCorrection

(Internal) Apply shrinkage correction to theta estimate
buildConstraints

Build constraints (shortcut to other loading functions)
calcFisher

Calculate Fisher information
calcEscore

Calculate expected scores
calcHessian

Calculate second derivative of log-likelihood
calcJacobian

Calculate first derivative of log-likelihood
calcLocation-methods

Calculate central location (overall difficulty)
applyThin

(Internal) Thin a MCMC chain
assembleShadowTest

(Internal) Assemble a shadowtest
calculateAdaptivityMeasures

Calculate Adaptivity Measures
calc_posterior_single

Calculate a posterior value of theta for a single item
calcLogLikelihood

Calculate log-likelihood
calcProb-methods

Calculate item response probabilities
calc_posterior_function

Calculate a posterior distribution of theta
assemblyInFinalThetaSegmentWasFeasibleAtLeastOnceInInterimThetaSegments

(Internal) Determine if shadowtest assembly was feasible for exposure control purposes
applyOverlapConstraintsToInfo

(Internal) Modify item information using overlap constraints
calc_MI_FB

Calculate the mutual information using full Bayesian
calc_info_FB

Calculate the Fisher information using full Bayesian
constraints-operators

Basic operators for constraints objects
calc_info

(C++) For multiple items, calculate Fisher information
calc_info_EB

Calculate the Fisher information using empirical Bayes
computeEAPFromPosterior

(Internal) Convert posterior densities into an EAP estimate
combineXdata

(Internal) Combine two constraint matrix-data
constraints-class

Class 'constraints': a set of constraints
checkConstraints

Check the consistency of constraints and item usage
constraint-class

Class 'constraint': a single constraint
combineItemPoolData

(Internal) Combine item pool data
config_Static-class

Create a config_Static object
dataset_bayes

Bayes dataset
computeInfoAtCurrentTheta

(Internal) Compute item information at current theta estimate
calc_likelihood

(C++) For multiple items, calculate likelihoods
calc_posterior

Calculate a posterior value of theta
determineCurrentThetaSegment

(Internal) Determine the current theta segment
detectBestSolver

Detect best solver
config_Shadow-class

Create a config_Shadow object
dataset_science

Science dataset
flagIneligible

(Internal) Obtain item/set level eligibility flags
generateSampleFromPriorPar

(Internal) Generate random theta samples from prior distribution
generateItemParameterSample

(Internal) Generate item parameter samples for Bayesian purposes
generateDensityFromPriorPar

(Internal) Convert prior parameters to distribution densities
combineConstraintsData

(Internal) Combine constraints data
getIndexOfExcludedEntry

(Internal) Convert item IDs to item indices for exclusion
getInfoFixedTheta

(Internal) Precalculate item information for fixed-theta item selection methods
doExposureControl

(Internal) Perform exposure control
estimateInterimTheta

(Internal) Estimate interim theta
estimateFinalTheta

(Internal) Estimate final theta
.onAttach

(Internal) Package startup functions
clipEligibilityRates

(Internal) Clip eligibility rates into 0-1 bounds
getInfoOfExcludedEntry

(Internal) Apply information penalty on items to be excluded
eap

Compute expected a posteriori estimates of theta
getSolutionAttributes

Retrieve constraints-related attributes from solution
e_item

(C++) Calculate expected scores
getDecisionVariablesOfItemForMultipool

(Internal) Make decision variables for selecting an item
dataset_fatigue

Fatigue dataset
getXdataOfAdministered

(Internal) Obtain constraint matrix-data of administered items/sets
getEligibilityFlagInSegment

(Internal) Parse eligibility flags for a specific theta segment
getSegmentProb

(Internal) Convert a theta distribution to segment-wise classification probabilities
getSegmentOf

(Internal) Calculate theta segment of a given examinee
dataset_reading

Reading dataset
initializeDiagnosticExposureRecord

(Internal) Initialize diagnostic exposure record
getDecisionVariablesOfPoolForMultipool

(Internal) Make decision variables for selecting a pool
info_item

(C++) Calculate Fisher information
getXdataOfExcludedEntry

(Internal) Translate item exclusion instructions into a constraint matrix-data
h_item

(C++) Calculate second derivative of log-likelihood
lnHyperPars

Convert mean and standard deviation into log-normal distribution parameters
iparPosteriorSample

Generate item parameter samples for Bayesian purposes
j_item

(C++) Calculate first derivative of log-likelihood
isCustomFirstSegmentAvailable

(Internal) Check if customized first segments are available
item-classes

Item classes
item_pool-class

Class 'item_pool': an item pool
item_pool-operators

Basic operators for item pool objects
initializeCompletedGroupingsRecord

(Internal) Initialize groupings record
initializeUsageMatrix

(Internal) Initialize item usage matrix
initializeSegmentRecord

(Internal) Initialize segment record
isSolutionOptimal

(Internal) Check whether solution is optimal
loadItemPool

Load item pool
item_attrib-operators

Basic functions for item attribute objects
makeSimulationDataCache

Create a simulation data cache object
getSolution

Print solution items
validateDifficulty

(Internal) Validate item objects
find_segment

(C++) Classify theta values into segments using cutpoints
st_attrib-class

Load set/stimulus/passage attributes
makeSetStructureConstraints

(Internal) Make set-based strucutre constraints
initializeExposureRecord

(Internal) Initialize exposure record
makeDiagnosticExposureRecord

(Internal) Collect diagnostic exposure record
dbind

(Internal) Bind matrices diagonally
getBayesianConstants

(Internal) Parse Bayesian-related constants
getScoreAttributes

Retrieve constraints-related scores from solution
loadConstraints

Load constraints
incrementPhi

(Internal) Increment exposure record variable: phi
getSegmentsToApply

(Internal) Make a vector for segment-dimensioned matrix update
getLBUBInConstraintData

(Internal) Parse item/stimulus lower/upper bounds from constraints data
flagAdministeredAsEligible

(Internal) Update eligibility flags to mark administered items as eligible
getConstants

(Internal) Parse constants for adaptive test assembly simulation
incrementN

(Internal) Increment exposure record variable: n
incrementRho

(Internal) Increment exposure record variable: rho
output_Split-class

Class 'output_Split': partitioning solution
mlef

Compute maximum likelihood estimates of theta using fence items
parseConstraintData

(Internal) Parse a constraint data into an object
incrementAlpha

(Internal) Increment exposure record variable: alpha
item_attrib-class

Load item attributes
output_Shadow_all-class

Class 'output_Shadow_all': a set of adaptive assembly solutions
p_item

(C++) Calculate item response probability
output_Static-class

Class 'output_Static': fixed-form assembly solution
simResp

Simulate item response data
simulation_data_cache-class

Class 'simulation_data_cache': data cache for Shadow()
print

Extension of print() for objects in TestDesign package
show

Extension of show() for objects in TestDesign package
plotShadowInfo

(Internal) Plot test information of a single shadow test
shouldShadowTestBeRefreshed

(Internal) Determine whether shadowtest should be refreshed
st_attrib-operators

Basic functions for stimulus attribute objects
parsePriorParameters

(Internal) Parse prior parameters from viable sources
splitSolutionToBins

(Internal) Convert a partitioning problem solution to indices
plotShadowAudit

(Internal) Plot audit trail of a single examinee
plotExposurePanel

(Internal) Draw an exposure rate plot
theta_EAP

(C++) Calculate a theta estimate using EAP (expected a posteriori) method
theta_EB

(C++) Calculate a theta estimate using EB (Empirical Bayes) method
validateFullColumn

(Internal) Validate constraint for completeness of its required attribute column
makeItemPoolCluster

Create an item pool cluster object
logitHyperPars

Convert mean and standard deviation into logit-normal distribution parameters
item_pool_cluster-class

Class 'item_pool_cluster': an item pool
validateLBUB

(Internal) Validate constraint lower/upper bounds
plotShadowChart

(Internal) Plot shadow chart of a single examinee
test-class

Class 'test': data cache for simulations
makeTest

Create a test object
testSolver

Test solver
plot

Extension of plot() for objects in TestDesign package
output_Shadow-class

Class 'output_Shadow': adaptive assembly solution for one simulee
summary-classes

Summary classes
parseShadowTestRefreshSchedule

(Internal) Parse shadowtest refresh schedule
selectItemFromShadowTest

(Internal) Select item from a shadowtest
plotShadowExposure

(Internal) Plot exposure rates from a simulation
sanitizeModel

(Internal) Sanitize item model names for C++ functions
makeConstraintsByEachPartition

make constraints objects from Split() solution indices
test_cluster-class

Class 'test_cluster': data cache for simulations
test_operators

Basic operators for test objects
updateSegmentRecord

(Internal) Update segment record
updateEligibilityRates

(Internal) Update eligibility rates based on exposure rates
makeTestCluster

Create a test cluster object
validateSolver

(Internal) Validate solver for interactive use
updateDiagnosticExposureRecord

(Internal) Update diagnostic exposure record
updateCompletedGroupingsRecordForStimulus

(Internal) Update groupings record for stimulus
summary

Extension of summary() for objects in TestDesign package
mle

Compute maximum likelihood estimates of theta
returnErrors

(Internal) Return S4 object validation error messages
toggleConstraints

Toggle constraints
theta_FB

(C++) Calculate a theta estimate using FB (Full Bayes) method
sanitizeConstraintsData

(Internal) Sanitize constraints data
runMIP

(Internal) Run MIP solver
updateUsageMatrix

(Internal) Update item usage matrix
updateThetaPosterior

(Internal) Update posterior densities
runAssembly

Run Test Assembly
validateConstraintData

(Internal) Validate constraint (wrapper for other validators)
validateExpression

(Internal) Validate constraint condition expression
RMSE

Calculate Root Mean Squared Error
addCountsToConstraintData

(Internal) Count number of pool items that match a constraint
RE

Calculate Relative Errors
Shadow

Run adaptive test assembly
Split

Split an item pool into partitions
Static

Run fixed-form test assembly
TestDesign

Open TestDesign app
addScoreToConstraintData

(Internal) Sum scores of items in a solution that match a constraint
adjustAlphaToReduceSpike

(Internal) Apply spike-reduction mechanism on exposure rates
app

Open TestDesign app
a_to_alpha

Calculate alpha angles from a-parameters
aggregateUsageMatrix

(Internal) Aggregate item usage matrix into exposure rate table
appendMeanInfo

(Internal) Append mean information to shadowtest